MAL-LOADER Fetch-to-Eval Remote Code Load
Source downloads code and runs it. The first stage in the repository is thin enough to pass review, while the real payload comes from a host the author controls at run time, so reading the clone cannot show what actually runs.
What Vulkro detects
MAL-LOADER-001 fires when a fetch and an execution sink fall within a few lines of each other in the same file. The same line (nested eval(fetch(...))) is the strongest case; a few lines apart is download-then-run.
Shapes in JS/TS and Python include:
eval(await (await fetch(url)).text())new Function(res.data)fed by a fetch a few lines upchild_process.execSync(downloaded)aftercurl/wget/fetch- Python
exec(requests.get(url).text)andpickle.loads(requests.get(...).content) - download to a temp file, then execute
This is not data flow: it shows a fetch and a sink are adjacent, not that the bytes reach the sink. A lone fetch or a lone eval never fires. It never certifies code safe.
How to fix
- Do not run the repository until you have fetched the URL yourself, out of band, and read what it serves.
- Replace runtime code download with a pinned, integrity-checked dependency.
References
See also: Confidence model.
This page is generated by vulkro rules export <out-dir> from Vulkro's built-in detector catalogue. Edits made by hand are overwritten on the next regeneration.