Scan timing: clone 5.23s · analysis 2.05s · 47.8 MB · GitHub API rate-limit (preflight)
https://github.com/stamparm/maltrail
· scanned 2026-05-31 01:25 UTC (5 days, 12 hours ago)
· 10 languages
173 findings (87 legacy + 86 scanner) 11/13 scanners ran 39th percentile · Python · small (2-20K LoC) Scanner says 89 (lower by 25)
Last scanned 5 days, 12 hours ago · v2 · 130 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
55.0 | 0.15 | 8.25 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
0.0 | 0.20 | 0.00 |
documentation_score |
97.0 | 0.15 | 14.55 |
practices_score |
67.0 | 0.15 | 10.05 |
code_quality |
61.0 | 0.10 | 6.10 |
| Overall | 1.00 | 63.9 |
All 1443 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
23.254.203.53 |
network | healthy | html/js/main.js |
127.0.0.1 |
network | healthy | html/js/main.js |
192.168.0.1 |
network | healthy | html/js/main.js |
10.3.160.42 |
network | healthy | html/js/demo.js |
8.8.8.8 |
network | healthy | html/js/demo.js |
2.200.110.232 |
network | healthy | html/js/demo.js |
2.200.107.168 |
network | healthy | html/js/demo.js |
2.200.108.59 |
network | healthy | html/js/demo.js |
77.53.81.105 |
network | healthy | html/js/demo.js |
2.200.106.65 |
network | healthy | html/js/demo.js |
2.200.107.146 |
network | healthy | html/js/demo.js |
45.54.64.53 |
network | healthy | html/js/demo.js |
2.200.104.32 |
network | healthy | html/js/demo.js |
2.23.97.219 |
network | healthy | html/js/demo.js |
178.17.174.14 |
network | healthy | html/js/demo.js |
2.200.109.24 |
network | healthy | html/js/demo.js |
2.200.110.233 |
network | healthy | html/js/demo.js |
2.200.107.169 |
network | healthy | html/js/demo.js |
194.58.192.49 |
network | healthy | html/js/demo.js |
52.57.28.60 |
network | healthy | html/js/demo.js |
204.16.253.53 |
network | healthy | html/js/demo.js |
10.38.194.125 |
network | healthy | html/js/demo.js |
10.1.194.234 |
network | healthy | html/js/demo.js |
2.200.105.226 |
network | healthy | html/js/demo.js |
208.67.222.123 |
network | healthy | html/js/demo.js |
10.8.160.51 |
network | healthy | html/js/demo.js |
10.1.20.238 |
network | healthy | html/js/demo.js |
45.95.202.106 |
network | healthy | html/js/demo.js |
2.200.103.85 |
network | healthy | html/js/demo.js |
93.184.221.240 |
network | healthy | html/js/demo.js |
45.175.22.4 |
network | healthy | html/js/demo.js |
212.18.249.42 |
network | healthy | html/js/demo.js |
10.1.56.50 |
network | healthy | html/js/demo.js |
2.23.97.208 |
network | healthy | html/js/demo.js |
194.62.182.53 |
network | healthy | html/js/demo.js |
2.200.109.177 |
network | healthy | html/js/demo.js |
10.1.81.47 |
network | healthy | html/js/demo.js |
10.1.20.50 |
network | healthy | html/js/demo.js |
10.1.19.42 |
network | healthy | html/js/demo.js |
208.68.240.103 |
network | healthy | html/js/demo.js |
10.2.120.16 |
network | healthy | html/js/demo.js |
2.200.109.50 |
network | healthy | html/js/demo.js |
172.217.40.3 |
network | healthy | html/js/demo.js |
2.200.104.43 |
network | healthy | html/js/demo.js |
173.194.170.7 |
network | healthy | html/js/demo.js |
172.217.40.72 |
network | healthy | html/js/demo.js |
10.43.192.103 |
network | healthy | html/js/demo.js |
213.252.245.197 |
network | healthy | html/js/demo.js |
52.58.214.33 |
network | healthy | html/js/demo.js |
190.9.129.56 |
network | healthy | html/js/demo.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
print |
software | healthy | sensor.py:141 |
_check_domain_member |
software | healthy | sensor.py:157 |
_check_domain_whitelisted |
software | healthy | sensor.py:167 |
_check_domain |
software | healthy | sensor.py:176 |
_get_local_prefix |
software | healthy | sensor.py:260 |
_process_packet |
software | healthy | sensor.py:273 |
_ |
software | healthy | sensor.py:1187 |
init |
software | healthy | sensor.py:886 |
update_timer |
software | healthy | sensor.py:901 |
_init_multiprocessing |
software | healthy | sensor.py:1086 |
monitor |
software | healthy | sensor.py:1122 |
packet_handler |
software | healthy | sensor.py:1129 |
main |
software | healthy | sensor.py:1266 |
main |
software | healthy | server.py:41 |
update_timer |
software | healthy | server.py:83 |
CHART_WIDTH |
software | healthy | html/js/main.js:CHART_WIDTH |
CHART_HEIGHT |
software | healthy | html/js/main.js:CHART_HEIGHT |
initDialogs |
software | healthy | html/js/main.js:initDialogs |
checkAuthentication |
software | healthy | html/js/main.js:checkAuthentication |
toggleHeatmap |
software | healthy | html/js/main.js:toggleHeatmap |
graphClose |
software | healthy | html/js/main.js:graphClose |
initCalHeatmap |
software | healthy | html/js/main.js:initCalHeatmap |
charTrim |
software | healthy | html/js/main.js:charTrim |
numberWithCommas |
software | healthy | html/js/main.js:numberWithCommas |
isLocalAddress |
software | healthy | html/js/main.js:isLocalAddress |
escapeHtml |
software | healthy | html/js/main.js:escapeHtml |
getContrast50 |
software | healthy | html/js/main.js:getContrast50 |
getPercentageColor |
software | healthy | html/js/main.js:getPercentageColor |
getContrastYIQ |
software | healthy | html/js/main.js:getContrastYIQ |
yiq |
software | healthy | html/js/main.js:yiq |
getTagHtml |
software | healthy | html/js/main.js:getTagHtml |
getHashColor |
software | healthy | html/js/main.js:getHashColor |
escapeRegExp |
software | healthy | html/js/main.js:escapeRegExp |
getThreatUID |
software | healthy | html/js/main.js:getThreatUID |
resetView |
software | healthy | html/js/main.js:resetView |
init |
software | healthy | html/js/main.js:init |
condensed |
software | healthy | html/js/main.js:condensed |
resetStatusButtons |
software | healthy | html/js/main.js:resetStatusButtons |
scrollTo |
software | healthy | html/js/main.js:scrollTo |
addrToInt |
software | healthy | html/js/main.js:addrToInt |
makeMask |
software | healthy | html/js/main.js:makeMask |
netmaskValidate |
software | healthy | html/js/main.js:netmaskValidate |
searchTipToTab |
software | healthy | html/js/main.js:searchTipToTab |
tagInputKeyUp |
software | healthy | html/js/main.js:tagInputKeyUp |
stopPropagation |
software | healthy | html/js/main.js:stopPropagation |
_sort |
software | healthy | html/js/main.js:_sort |
_ipSortingValue |
software | healthy | html/js/main.js:_ipSortingValue |
_ipCompareValues |
software | healthy | html/js/main.js:_ipCompareValues |
copyEllipsisToClipboard |
software | healthy | html/js/main.js:copyEllipsisToClipboard |
copyEventsToClipboard |
software | healthy | html/js/main.js:copyEventsToClipboard |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
sensor.py |
software | healthy | sensor.py |
server.py |
software | healthy | server.py |
requirements.txt |
software | healthy | requirements.txt |
SECURITY.md |
software | healthy | SECURITY.md |
README.md |
software | healthy | docker/README.md |
start.sh |
software | healthy | docker/start.sh |
Dockerfile |
software | healthy | docker/Dockerfile |
docker-compose.yml |
software | healthy | docker/docker-compose.yml |
index.html |
software | healthy | html/index.html |
errorhandler.js |
software | warning | html/js/errorhandler.js |
main.js |
software | healthy | html/js/main.js |
demo.js |
software | healthy | html/js/demo.js |
thirdparty.min.js |
software | healthy | html/js/thirdparty.min.js |
papaparse.min.js |
software | healthy | html/js/papaparse.min.js |
main.css |
software | healthy | html/css/main.css |
media.css |
software | healthy | html/css/media.css |
thirdparty.min.css |
software | healthy | html/css/thirdparty.min.css |
__init__.py |
software | healthy | trails/static/__init__.py |
__init__.py |
software | healthy | trails/custom/__init__.py |
ransomwaretrackerip.py |
software | healthy | trails/feeds/ransomwaretrackerip.py |
openphish.py |
software | healthy | trails/feeds/openphish.py |
cybercrimetracker.py |
software | healthy | trails/feeds/cybercrimetracker.py |
blackholemonster.py |
software | healthy | trails/feeds/blackholemonster.py |
emergingthreatsdns.py |
software | healthy | trails/feeds/emergingthreatsdns.py |
__init__.py |
software | healthy | trails/feeds/__init__.py |
badips.py |
software | healthy | trails/feeds/badips.py |
gpfcomics.py |
software | healthy | trails/feeds/gpfcomics.py |
fareit.py |
software | healthy | trails/feeds/fareit.py |
cleantalk.py |
software | healthy | trails/feeds/cleantalk.py |
myip.py |
software | healthy | trails/feeds/myip.py |
binarydefense.py |
software | healthy | trails/feeds/binarydefense.py |
palevotracker.py |
software | healthy | trails/feeds/palevotracker.py |
bruteforceblocker.py |
software | healthy | trails/feeds/bruteforceblocker.py |
feodotrackerip.py |
software | healthy | trails/feeds/feodotrackerip.py |
zeustrackermonitor.py |
software | healthy | trails/feeds/zeustrackermonitor.py |
zeustrackerurl.py |
software | healthy | trails/feeds/zeustrackerurl.py |
ipnoise.py |
software | healthy | trails/feeds/ipnoise.py |
scriptzteam.py |
software | healthy | trails/feeds/scriptzteam.py |
atmos.py |
software | healthy | trails/feeds/atmos.py |
ransomwaretrackerdns.py |
software | healthy | trails/feeds/ransomwaretrackerdns.py |
sblam.py |
software | healthy | trails/feeds/sblam.py |
trickbot.py |
software | healthy | trails/feeds/trickbot.py |
cobaltstrike.py |
software | healthy | trails/feeds/cobaltstrike.py |
sslproxies.py |
software | healthy | trails/feeds/sslproxies.py |
turris.py |
software | healthy | trails/feeds/turris.py |
greensnow.py |
software | healthy | trails/feeds/greensnow.py |
alienvault.py |
software | healthy | trails/feeds/alienvault.py |
torproject.py |
software | healthy | trails/feeds/torproject.py |
emergingthreatscip.py |
software | healthy | trails/feeds/emergingthreatscip.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
_set |
software | healthy | sensor.py:131 |
OrderedDict |
software | healthy | thirdparty/odict/ordereddict.py:31 |
X |
software | healthy | thirdparty/six/__init__.py:60 |
_LazyDescr |
software | healthy | thirdparty/six/__init__.py:91 |
MovedModule |
software | healthy | thirdparty/six/__init__.py:108 |
_LazyModule |
software | healthy | thirdparty/six/__init__.py:129 |
MovedAttribute |
software | healthy | thirdparty/six/__init__.py:144 |
_SixMetaPathImporter |
software | healthy | thirdparty/six/__init__.py:169 |
_MovedItems |
software | healthy | thirdparty/six/__init__.py:245 |
Module_six_moves_urllib_parse |
software | healthy | thirdparty/six/__init__.py:340 |
Module_six_moves_urllib_error |
software | healthy | thirdparty/six/__init__.py:382 |
Module_six_moves_urllib_request |
software | healthy | thirdparty/six/__init__.py:402 |
Module_six_moves_urllib_response |
software | healthy | thirdparty/six/__init__.py:459 |
Module_six_moves_urllib_robotparser |
software | healthy | thirdparty/six/__init__.py:480 |
Module_six_moves_urllib |
software | healthy | thirdparty/six/__init__.py:498 |
Iterator |
software | healthy | thirdparty/six/__init__.py:584 |
metaclass |
software | healthy | thirdparty/six/__init__.py:866 |
_ |
software | healthy | core/enums.py:12 |
TRAIL |
software | healthy | core/enums.py:17 |
BLOCK_MARKER |
software | healthy | core/enums.py:27 |
PROTO |
software | healthy | core/enums.py:33 |
HTTP_HEADER |
software | healthy | core/enums.py:38 |
CACHE_TYPE |
software | healthy | core/enums.py:70 |
COLOR |
software | healthy | core/enums.py:78 |
BACKGROUND |
software | healthy | core/enums.py:114 |
SEVERITY |
software | healthy | core/enums.py:133 |
TrailsDict |
software | healthy | core/trailsdict.py:10 |
LRUDict |
software | healthy | core/datatype.py:6 |
ColorizedStream |
software | healthy | core/colorized.py:13 |
ThreadingServer |
software | healthy | core/httpd.py:83 |
SSLThreadingServer |
software | healthy | core/httpd.py:95 |
ReqHandler |
software | healthy | core/httpd.py:126 |
SSLReqHandler |
software | healthy | core/httpd.py:837 |
ThreadingUDPServer |
software | healthy | core/log.py:243 |
UDPHandler |
software | healthy | core/log.py:246 |
AttribDict |
software | healthy | core/attribdict.py:8 |
_NoRedirect |
software | healthy | core/common.py:75 |
| Label | Layer | Status | Path |
|---|---|---|---|
docker |
software | healthy | docker |
html |
software | healthy | html |
js |
software | healthy | html/js |
css |
software | healthy | html/css |
trails |
software | healthy | trails |
static |
software | healthy | trails/static |
custom |
software | healthy | trails/custom |
feeds |
software | healthy | trails/feeds |
thirdparty |
software | healthy | thirdparty |
odict |
software | healthy | thirdparty/odict |
six |
software | healthy | thirdparty/six |
core |
software | healthy | core |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
plugins |
software | healthy | plugins |
| Label | Layer | Status | Path |
|---|---|---|---|
mysql |
data | healthy | html/js/main.js |
postgresql |
data | healthy | html/js/main.js |
redis |
data | healthy | html/js/main.js |
sqlite |
data | healthy | core/settings.py |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8337 |
network | healthy | docker/Dockerfile |
port:8338 |
network | healthy | docker/Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
image::docker/Dockerfile |
hardware | healthy | docker/Dockerfile |
server |
hardware | healthy | docker/docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
GITHUB_TOKEN |
cicd | healthy | — |
TAG |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-qddcvus8 |
software | healthy | /tmp/repobility-clone-qddcvus8 |
| Label | Layer | Status | Path |
|---|---|---|---|
ranges |
data | healthy | core/update.py |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::docker-release |
cicd | healthy | .github/workflows/docker-release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
build-and-push |
cicd | healthy | .github/workflows/docker-release.yml |
This page is publicly accessible at:
https://repobility.com/scan/0d172410-289d-4523-b02b-2f08ebb486f4/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/0d172410-289d-4523-b02b-2f08ebb486f4/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.