Files
nuclei-templates/javascript/detection/ajp-protocol-detect.yaml
2025-10-26 16:17:37 +00:00

41 lines
1.1 KiB
YAML

id: ajp-protocol-detect
info:
name: AJP Protocol Detection
author: pussycat0x
severity: info
reference:
- https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html
metadata:
verfied: true
shodan-query: 'port:8009 product:"Apache Tomcat"'
max-request: 1
tags: js,network,detect,tomcat,apache,tcp,discovery
javascript:
- pre-condition: |
isPortOpen(Host,Port);
code: |
let packet = bytes.NewBuffer();
let ajp_ping = "\x12\x34\x00\x01\x0a"
data = packet.Write(ajp_ping )
const c = require("nuclei/net");
let conn = c.Open('tcp', `${Host}:${Port}`);
conn.Send(data);
let resp = conn.RecvFullString();
// AJP messages start with "AB"
if (resp.includes("AB\x00\x01")) {
Export("AJP Detected");
} else {
conn.Close();
}
args:
Host: "{{Host}}"
Port: 8009
extractors:
- type: dsl
dsl:
- response
# digest: 4b0a00483046022100853806f79ec18b20bb8764484f88623cc93bf7ee2ac65b9f90feba271b1183d5022100d30030cd88330b0bfefb0a89a4761610a838c4d223497a52e79a314d2dc46579:922c64590222798bb761d5b6d8e72950