Check the report below, then download or share it. Download PDF Open PDF Back to results

MalDet · Static Security Report

MalwareSourceCode

github.com/vxunderground/MalwareSourceCode
Scanned 29 July 2026 at 15:18  ·  Report generated 29 October 2026  ·  Assembly  ·  18,194 stars
Overall assessment
Critical
Combined score 498  ·  165 findings after filtering

Summary

This repository has been flagged as having a critical vulnerability score of 498.0, which means there are serious insecure coding patterns that an attacker could exploit if the code is used. The scan found many issues related to unsafe file handling and buffer overflows caused by functions like sprintf and path traversal vulnerabilities, but these appear to be standard mistakes in how the code was written rather than signs of intentional malicious intent. While some findings involve sensitive AWS credentials or external data that should not be hardcoded, the overall picture suggests the codebase contains significant security gaps that need immediate attention before it can be trusted for production use.

Written by a language model running locally on the scanning machine, from the findings in this report. The risk levels above and below were decided by the scoring model, not by this summary.

Risk, by type

MalDet scores two different questions separately, because they call for different responses: code can be badly written without being hostile, and hostile code is not always badly written.

Vulnerability
Critical (498)
Insecure coding an attacker could exploit. Usually mistakes, and usually fixable in place.
Malicious pattern
Safe (0)
Signs the code may be trying to do harm: hidden payloads, credential access, persistence, exfiltration.

What each detector found

DetectorLooks for HighMediumLowTotal
semgrep Insecure coding patterns across many languages 13 112 40 165

164 of 165 findings were rated more likely genuine than noise by the classifier.

Evidence

Identical findings are grouped, so a single rule firing many times takes one row. Ordered worst first. “Seen” is how many times that finding occurred.

SeverityDetectorFindingSeenExample location
high semgrep The application builds a file path from potentially untrusted data, which can lead to a path traversal vulnerability. An attacker can manipulate the path which the application uses to access files. If the application does not validate user input and sanitize file paths, sensitive files such as confi 8 /Linux/Mirai-Family/Mirai.Linux.eragon.c:1634
high semgrep AWS Secret Access Key detected 1 /Python/Trojan-Ransom.Python.Redkeeper.a:20
high semgrep The `strchr` function returns NULL on error and this line dereferences the return value without checking for NULL. 3 /Linux/Mirai-Family/Mirai.Linux.Eragon2.0.c:1785
high semgrep AWS Access Key ID Value detected. This is a sensitive credential and should not be hardcoded here. Instead, read this value from an environment variable or keep it in a separate, private file. 1 /Python/Trojan-Ransom.Python.Redkeeper.a:19
medium semgrep Externally controlled data is used to index a fixed-size array, `lin`. This could lead to an out-of-bounds read or write, triggering memory corruption. 2 /Win32/InternetWorm/I-Worm.PieceByPiece.c:504
medium semgrep Avoid using 'strtok()'. This function directly modifies the first argument buffer, permanently erasing the delimiter character. Use 'strtok_r()' instead. 55 /Libs/DDoS/VirTool.DDoS.GHP.c:287
medium semgrep Externally controlled data influences the size of an allocation. This can usually lead to overflow or underflow and later trigger an out of bounds conditions. 29 /Libs/DDoS/VirTool.DDoS.DOMINATE.c:167
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `request`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 7 /Linux/Mirai-Family/Mirai.Linux.yakuza.c:1179
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `cmdstr`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 3 /Win32/Win32.Blaster.cpp:1021
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `parseError`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 3 /Libs/DDoS/VirTool.DDoS.RUDY.c:1016
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `tempfile`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 1 /MSDOS/V-Index/Virus.MSDOS.Unknown.vlp1.c:314
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `CleanDevice`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 1 /Linux/Mirai-Family/Mirai.Linux.yakuza.c:938
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `msg_cmd`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 1 /Win32/InternetWorm/Worm.Win32.Warskype.c:86
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `msg`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 1 /Win32/InternetWorm/Worm.Win32.Warskype.c:43
medium semgrep The function `sprintf` does not impose any size limitation to what it writes to `myhostname`. That may lead to a stack buffer overflow if there is no validation on the size of the input. 1 /Win32/Win32.Blaster.cpp:252
medium semgrep Possible active debug code detected. Deploying an application with debug code can create unintended entry points or expose sensitive information. 6 /Java/Virus.Java.Cheshire.a/src/main/java/SelfExamine.java:476
medium semgrep Detected a network listener listening on 0.0.0.0 or an empty string. This could unexpectedly expose the server publicly as it binds to all available interfaces. Instead, specify another IP address that is not 0.0.0.0 nor the empty string. 1 /Linux/Linux.BotenaGo.go:2840
medium semgrep Do not use `math/rand`. Use `crypto/rand` instead. 1 /Linux/Linux.BotenaGo.go:13
low semgrep Don't call `system`. It's a high-level wrapper that allows for stacking multiple commands. Always prefer a more restrictive API such as calling `execve` from the `exec` family. 38 /Linux/Mirai-Family/Mirai.Linux.Eragon2.0.c:373
low semgrep This call to `memset` may be optimized out by the compiler because the buffer is not accessed later in the function. This could be an issue if `linebuf` contains sensitive data, such as passwords or cryptographic keys. Applications should use functions such as `memset_s` or `memset_explicit` to ensu 2 /Linux/Mirai-Family/Mirai.Linux.eragon.c:1576

How to read this report