Fake job offer ZIP runs malware through a plain git status
A recruiter from "Cryptic Heaven" sent a developer a contract ZIP with a rigged .git folder. Even a routine git status can trigger a hidden download.

A developer got a LinkedIn message from a recruiter at a company called Cryptic Heaven, which supposedly builds a financial system for crypto credit card users. The offer looked ordinary. The ZIP file behind it was not, and a plain git status in the wrong folder can be enough to set off its trap.
After the developer asked for details, the recruiter replied with a link to a contract, a job description and a project. The link led to Contract-2026.zip. Inside were a README.md, a contract.docx and a full .git directory with history, several branches and local settings. The README told the reader to go through three branches in order: the vacancy, the contract, then the code. The contract was an empty template, with no legal entity, pay or jurisdiction. The Smart Contract Developer listing was also mostly blank.
How does the Git trap work?
Git can run outside programs, and the attacker set up two ways to trigger them. The first is core.hooksPath in .git/config, which points Git to a different folder for hooks (scripts that run on events). That folder held a post-checkout script, which runs after switching branches. That explains why the README asked the reader to hop between branches.
The second is a custom "clean" filter named ltr, which Git uses to transform file content on its way into storage. A wildcard attributes rule applied it to all files. To decide whether files changed, git status can push them through that filter. So an ordinary git status, which an editor may run on its own, can launch the script .git/ltr.
The author confirmed this on a harmless test repository, where git status called the filter and a branch switch also called post-checkout.
What does the script do?
It is a shell script with a debounce: it logs the time of each filter call, and a background process waits until two seconds pass without a new one, so it only fires once. A directory created with mkdir acts as a lock. Then it detects the operating system, downloads code from a vercelscript.vercel.app subdomain and runs it, through sh on Linux and macOS or PowerShell on Windows. Output and errors go to /dev/null, so the user may notice nothing.
What the downloaded code does cannot be determined from the ZIP alone. It could be a next-stage loader, data theft or something else.
The practical lesson: a repository sent as an archive with its .git folder is not the same as a clone from GitHub or GitLab, and opening it in an IDE can be risky.
Apps worth a look
Tap the right tiles, add them up, hit the target. Easy to learn, hard to master. Free, for all ages.
Talk to an AI conversation partner; every sentence comes back corrected and explained in your language. 9 languages, A1 to C2.
Open EDIFACT and X12 messages, see every segment explained, convert to JSON/XML, export PDF and Excel. Runs locally, no upload.
Pick who it is for, the occasion and their personality. The search engine reads product descriptions from local shops and ranks what fits. Free, no sign-up.
More from this day
See all →More in: Security
See all →
Cyber Security Cloud GitHub leak: one stolen login exposed customer data

wfx-loot attack hit 61,000 GitHub repos to steal secrets

SignDrop Windows zero-day turns Defender against itself




