fingerprint-mcp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +663 -0
- package/README.ar.md +767 -0
- package/README.bn.md +767 -0
- package/README.bs.md +767 -0
- package/README.da.md +767 -0
- package/README.de.md +770 -0
- package/README.el.md +767 -0
- package/README.es.md +769 -0
- package/README.fr.md +769 -0
- package/README.hi.md +767 -0
- package/README.it.md +767 -0
- package/README.ja.md +767 -0
- package/README.ko.md +772 -0
- package/README.md +767 -0
- package/README.no.md +767 -0
- package/README.pl.md +767 -0
- package/README.pt-BR.md +767 -0
- package/README.ru.md +767 -0
- package/README.th.md +767 -0
- package/README.tr.md +767 -0
- package/README.uk.md +767 -0
- package/README.vi.md +767 -0
- package/README.zh-TW.md +768 -0
- package/README.zh.md +768 -0
- package/dist/app/index.d.ts +3 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/index.js +614 -0
- package/dist/app/index.js.map +1 -0
- package/dist/composite/analyze.d.ts +3 -0
- package/dist/composite/analyze.d.ts.map +1 -0
- package/dist/composite/analyze.js +59 -0
- package/dist/composite/analyze.js.map +1 -0
- package/dist/composite/correlate.d.ts +3 -0
- package/dist/composite/correlate.d.ts.map +1 -0
- package/dist/composite/correlate.js +184 -0
- package/dist/composite/correlate.js.map +1 -0
- package/dist/composite/enumerate.d.ts +3 -0
- package/dist/composite/enumerate.d.ts.map +1 -0
- package/dist/composite/enumerate.js +94 -0
- package/dist/composite/enumerate.js.map +1 -0
- package/dist/composite/helpers.d.ts +22 -0
- package/dist/composite/helpers.d.ts.map +1 -0
- package/dist/composite/helpers.js +111 -0
- package/dist/composite/helpers.js.map +1 -0
- package/dist/composite/index.d.ts +3 -0
- package/dist/composite/index.d.ts.map +1 -0
- package/dist/composite/index.js +29 -0
- package/dist/composite/index.js.map +1 -0
- package/dist/composite/meta.d.ts +3 -0
- package/dist/composite/meta.d.ts.map +1 -0
- package/dist/composite/meta.js +23 -0
- package/dist/composite/meta.js.map +1 -0
- package/dist/composite/osint.d.ts +3 -0
- package/dist/composite/osint.d.ts.map +1 -0
- package/dist/composite/osint.js +40 -0
- package/dist/composite/osint.js.map +1 -0
- package/dist/composite/recon.d.ts +3 -0
- package/dist/composite/recon.d.ts.map +1 -0
- package/dist/composite/recon.js +131 -0
- package/dist/composite/recon.js.map +1 -0
- package/dist/composite/scan-dns.d.ts +3 -0
- package/dist/composite/scan-dns.d.ts.map +1 -0
- package/dist/composite/scan-dns.js +44 -0
- package/dist/composite/scan-dns.js.map +1 -0
- package/dist/composite/scan-http.d.ts +3 -0
- package/dist/composite/scan-http.d.ts.map +1 -0
- package/dist/composite/scan-http.js +68 -0
- package/dist/composite/scan-http.js.map +1 -0
- package/dist/composite/scan-paths.d.ts +3 -0
- package/dist/composite/scan-paths.d.ts.map +1 -0
- package/dist/composite/scan-paths.js +32 -0
- package/dist/composite/scan-paths.js.map +1 -0
- package/dist/composite/scan-ports.d.ts +3 -0
- package/dist/composite/scan-ports.d.ts.map +1 -0
- package/dist/composite/scan-ports.js +79 -0
- package/dist/composite/scan-ports.js.map +1 -0
- package/dist/composite/scan-services.d.ts +3 -0
- package/dist/composite/scan-services.d.ts.map +1 -0
- package/dist/composite/scan-services.js +111 -0
- package/dist/composite/scan-services.js.map +1 -0
- package/dist/composite/scan-tls.d.ts +3 -0
- package/dist/composite/scan-tls.d.ts.map +1 -0
- package/dist/composite/scan-tls.js +32 -0
- package/dist/composite/scan-tls.js.map +1 -0
- package/dist/composite/scan-waf.d.ts +3 -0
- package/dist/composite/scan-waf.d.ts.map +1 -0
- package/dist/composite/scan-waf.js +35 -0
- package/dist/composite/scan-waf.js.map +1 -0
- package/dist/correlation/index.d.ts +3 -0
- package/dist/correlation/index.d.ts.map +1 -0
- package/dist/correlation/index.js +1044 -0
- package/dist/correlation/index.js.map +1 -0
- package/dist/data/analytics-patterns.d.ts +21 -0
- package/dist/data/analytics-patterns.d.ts.map +1 -0
- package/dist/data/analytics-patterns.js +449 -0
- package/dist/data/analytics-patterns.js.map +1 -0
- package/dist/data/app-signatures.d.ts +52 -0
- package/dist/data/app-signatures.d.ts.map +1 -0
- package/dist/data/app-signatures.js +1143 -0
- package/dist/data/app-signatures.js.map +1 -0
- package/dist/data/c2-signatures.d.ts +54 -0
- package/dist/data/c2-signatures.d.ts.map +1 -0
- package/dist/data/c2-signatures.js +256 -0
- package/dist/data/c2-signatures.js.map +1 -0
- package/dist/data/cloud-ranges.d.ts +34 -0
- package/dist/data/cloud-ranges.d.ts.map +1 -0
- package/dist/data/cloud-ranges.js +628 -0
- package/dist/data/cloud-ranges.js.map +1 -0
- package/dist/data/cookie-patterns.d.ts +28 -0
- package/dist/data/cookie-patterns.d.ts.map +1 -0
- package/dist/data/cookie-patterns.js +225 -0
- package/dist/data/cookie-patterns.js.map +1 -0
- package/dist/data/error-signatures.d.ts +19 -0
- package/dist/data/error-signatures.d.ts.map +1 -0
- package/dist/data/error-signatures.js +321 -0
- package/dist/data/error-signatures.js.map +1 -0
- package/dist/data/favicon-hashes.d.ts +25 -0
- package/dist/data/favicon-hashes.d.ts.map +1 -0
- package/dist/data/favicon-hashes.js +249 -0
- package/dist/data/favicon-hashes.js.map +1 -0
- package/dist/data/h2-signatures.d.ts +50 -0
- package/dist/data/h2-signatures.d.ts.map +1 -0
- package/dist/data/h2-signatures.js +211 -0
- package/dist/data/h2-signatures.js.map +1 -0
- package/dist/data/header-order.d.ts +38 -0
- package/dist/data/header-order.d.ts.map +1 -0
- package/dist/data/header-order.js +185 -0
- package/dist/data/header-order.js.map +1 -0
- package/dist/data/jarm-signatures.d.ts +25 -0
- package/dist/data/jarm-signatures.d.ts.map +1 -0
- package/dist/data/jarm-signatures.js +213 -0
- package/dist/data/jarm-signatures.js.map +1 -0
- package/dist/data/saas-patterns.d.ts +23 -0
- package/dist/data/saas-patterns.d.ts.map +1 -0
- package/dist/data/saas-patterns.js +139 -0
- package/dist/data/saas-patterns.js.map +1 -0
- package/dist/data/sensitive-paths.d.ts +12 -0
- package/dist/data/sensitive-paths.d.ts.map +1 -0
- package/dist/data/sensitive-paths.js +1539 -0
- package/dist/data/sensitive-paths.js.map +1 -0
- package/dist/data/service-banners.d.ts +59 -0
- package/dist/data/service-banners.d.ts.map +1 -0
- package/dist/data/service-banners.js +323 -0
- package/dist/data/service-banners.js.map +1 -0
- package/dist/data/smtp-signatures.d.ts +12 -0
- package/dist/data/smtp-signatures.d.ts.map +1 -0
- package/dist/data/smtp-signatures.js +350 -0
- package/dist/data/smtp-signatures.js.map +1 -0
- package/dist/data/takeover-patterns.d.ts +37 -0
- package/dist/data/takeover-patterns.d.ts.map +1 -0
- package/dist/data/takeover-patterns.js +249 -0
- package/dist/data/takeover-patterns.js.map +1 -0
- package/dist/data/tech-patterns.d.ts +44 -0
- package/dist/data/tech-patterns.d.ts.map +1 -0
- package/dist/data/tech-patterns.js +690 -0
- package/dist/data/tech-patterns.js.map +1 -0
- package/dist/data/waf-signatures.d.ts +21 -0
- package/dist/data/waf-signatures.d.ts.map +1 -0
- package/dist/data/waf-signatures.js +318 -0
- package/dist/data/waf-signatures.js.map +1 -0
- package/dist/dns/index.d.ts +3 -0
- package/dist/dns/index.d.ts.map +1 -0
- package/dist/dns/index.js +1067 -0
- package/dist/dns/index.js.map +1 -0
- package/dist/enum/index.d.ts +3 -0
- package/dist/enum/index.d.ts.map +1 -0
- package/dist/enum/index.js +818 -0
- package/dist/enum/index.js.map +1 -0
- package/dist/h2/index.d.ts +3 -0
- package/dist/h2/index.d.ts.map +1 -0
- package/dist/h2/index.js +414 -0
- package/dist/h2/index.js.map +1 -0
- package/dist/http/index.d.ts +3 -0
- package/dist/http/index.d.ts.map +1 -0
- package/dist/http/index.js +2444 -0
- package/dist/http/index.js.map +1 -0
- package/dist/identify/index.d.ts +3 -0
- package/dist/identify/index.d.ts.map +1 -0
- package/dist/identify/index.js +447 -0
- package/dist/identify/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +165 -0
- package/dist/index.js.map +1 -0
- package/dist/infra/index.d.ts +3 -0
- package/dist/infra/index.d.ts.map +1 -0
- package/dist/infra/index.js +989 -0
- package/dist/infra/index.js.map +1 -0
- package/dist/iot/index.d.ts +3 -0
- package/dist/iot/index.d.ts.map +1 -0
- package/dist/iot/index.js +610 -0
- package/dist/iot/index.js.map +1 -0
- package/dist/meta/index.d.ts +3 -0
- package/dist/meta/index.d.ts.map +1 -0
- package/dist/meta/index.js +442 -0
- package/dist/meta/index.js.map +1 -0
- package/dist/osint/index.d.ts +3 -0
- package/dist/osint/index.d.ts.map +1 -0
- package/dist/osint/index.js +687 -0
- package/dist/osint/index.js.map +1 -0
- package/dist/passive/index.d.ts +3 -0
- package/dist/passive/index.d.ts.map +1 -0
- package/dist/passive/index.js +944 -0
- package/dist/passive/index.js.map +1 -0
- package/dist/path/index.d.ts +3 -0
- package/dist/path/index.d.ts.map +1 -0
- package/dist/path/index.js +878 -0
- package/dist/path/index.js.map +1 -0
- package/dist/protocol/mcp-server.d.ts +4 -0
- package/dist/protocol/mcp-server.d.ts.map +1 -0
- package/dist/protocol/mcp-server.js +32 -0
- package/dist/protocol/mcp-server.js.map +1 -0
- package/dist/protocol/tools.d.ts +3 -0
- package/dist/protocol/tools.d.ts.map +1 -0
- package/dist/protocol/tools.js +5 -0
- package/dist/protocol/tools.js.map +1 -0
- package/dist/service/index.d.ts +3 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +1053 -0
- package/dist/service/index.js.map +1 -0
- package/dist/smtp/index.d.ts +3 -0
- package/dist/smtp/index.d.ts.map +1 -0
- package/dist/smtp/index.js +437 -0
- package/dist/smtp/index.js.map +1 -0
- package/dist/ssh/index.d.ts +3 -0
- package/dist/ssh/index.d.ts.map +1 -0
- package/dist/ssh/index.js +676 -0
- package/dist/ssh/index.js.map +1 -0
- package/dist/tcp/index.d.ts +3 -0
- package/dist/tcp/index.d.ts.map +1 -0
- package/dist/tcp/index.js +369 -0
- package/dist/tcp/index.js.map +1 -0
- package/dist/timing/index.d.ts +3 -0
- package/dist/timing/index.d.ts.map +1 -0
- package/dist/timing/index.js +425 -0
- package/dist/timing/index.js.map +1 -0
- package/dist/tls/index.d.ts +3 -0
- package/dist/tls/index.d.ts.map +1 -0
- package/dist/tls/index.js +1332 -0
- package/dist/tls/index.js.map +1 -0
- package/dist/types/index.d.ts +26 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/cache.d.ts +11 -0
- package/dist/utils/cache.d.ts.map +1 -0
- package/dist/utils/cache.js +35 -0
- package/dist/utils/cache.js.map +1 -0
- package/dist/utils/murmurhash3.d.ts +3 -0
- package/dist/utils/murmurhash3.d.ts.map +1 -0
- package/dist/utils/murmurhash3.js +57 -0
- package/dist/utils/murmurhash3.js.map +1 -0
- package/dist/utils/rate-limiter.d.ts +10 -0
- package/dist/utils/rate-limiter.d.ts.map +1 -0
- package/dist/utils/rate-limiter.js +35 -0
- package/dist/utils/rate-limiter.js.map +1 -0
- package/dist/utils/require-key.d.ts +2 -0
- package/dist/utils/require-key.d.ts.map +1 -0
- package/dist/utils/require-key.js +8 -0
- package/dist/utils/require-key.js.map +1 -0
- package/dist/waf/index.d.ts +3 -0
- package/dist/waf/index.d.ts.map +1 -0
- package/dist/waf/index.js +767 -0
- package/dist/waf/index.js.map +1 -0
- package/dist/web/index.d.ts +3 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +1366 -0
- package/dist/web/index.js.map +1 -0
- package/package.json +66 -0
package/README.hi.md
ADDED
|
@@ -0,0 +1,767 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.md">English</a> |
|
|
3
|
+
<a href="README.zh.md">简体中文</a> |
|
|
4
|
+
<a href="README.zh-TW.md">繁體中文</a> |
|
|
5
|
+
<a href="README.ko.md">한국어</a> |
|
|
6
|
+
<a href="README.de.md">Deutsch</a> |
|
|
7
|
+
<a href="README.es.md">Español</a> |
|
|
8
|
+
<a href="README.fr.md">Français</a> |
|
|
9
|
+
<a href="README.it.md">Italiano</a> |
|
|
10
|
+
<a href="README.da.md">Dansk</a> |
|
|
11
|
+
<a href="README.ja.md">日本語</a> |
|
|
12
|
+
<a href="README.pl.md">Polski</a> |
|
|
13
|
+
<a href="README.ru.md">Русский</a> |
|
|
14
|
+
<a href="README.bs.md">Bosanski</a> |
|
|
15
|
+
<a href="README.ar.md">العربية</a> |
|
|
16
|
+
<a href="README.no.md">Norsk</a> |
|
|
17
|
+
<a href="README.pt-BR.md">Português (Brasil)</a> |
|
|
18
|
+
<a href="README.th.md">ไทย</a> |
|
|
19
|
+
<a href="README.tr.md">Türkçe</a> |
|
|
20
|
+
<a href="README.uk.md">Українська</a> |
|
|
21
|
+
<a href="README.bn.md">বাংলা</a> |
|
|
22
|
+
<a href="README.el.md">Ελληνικά</a> |
|
|
23
|
+
<a href="README.vi.md">Tiếng Việt</a> |
|
|
24
|
+
<strong>हिन्दी</strong>
|
|
25
|
+
</p>
|
|
26
|
+
|
|
27
|
+
<p align="center">
|
|
28
|
+
<br>
|
|
29
|
+
<picture>
|
|
30
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/badchars/fingerprint-mcp/main/.github/banner-dark.svg">
|
|
31
|
+
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/badchars/fingerprint-mcp/main/.github/banner-light.svg">
|
|
32
|
+
<img alt="fingerprint-mcp" src="https://raw.githubusercontent.com/badchars/fingerprint-mcp/main/.github/banner-dark.svg" width="700">
|
|
33
|
+
</picture>
|
|
34
|
+
</p>
|
|
35
|
+
|
|
36
|
+
<h3 align="center">AI एजेंटों के लिए सार्वभौमिक डिजिटल फिंगरप्रिंटिंग।</h3>
|
|
37
|
+
|
|
38
|
+
<p align="center">
|
|
39
|
+
TCP, TLS/SSL, SSH, HTTP, DNS, WAF/CDN, IoT, SMTP, सर्विस प्रोबिंग, JARM, JA4X, फेविकॉन हैशिंग, इंफ्रास्ट्रक्चर टोपोलॉजी, C2 डिटेक्शन, OSINT एनरिचमेंट — एक एकल MCP सर्वर में एकीकृत।<br>
|
|
40
|
+
आपका AI एजेंट पाता है <b>मांग पर पूर्ण-स्पेक्ट्रम फिंगरप्रिंटिंग</b>, 11 अलग-अलग CLI टूल और मैनुअल कोरिलेशन नहीं।
|
|
41
|
+
</p>
|
|
42
|
+
|
|
43
|
+
<br>
|
|
44
|
+
|
|
45
|
+
<p align="center">
|
|
46
|
+
<a href="#समस्या">समस्या</a> •
|
|
47
|
+
<a href="#यह-कैसे-अलग-है">यह कैसे अलग है</a> •
|
|
48
|
+
<a href="#त्वरित-शुरुआत">त्वरित शुरुआत</a> •
|
|
49
|
+
<a href="#ai-क्या-कर-सकता-है">AI क्या कर सकता है</a> •
|
|
50
|
+
<a href="#टूल-संदर्भ-13-टूल-103-तकनीक">टूल (13)</a> •
|
|
51
|
+
<a href="#डेटा-स्रोत-21">डेटा स्रोत</a> •
|
|
52
|
+
<a href="#आर्किटेक्चर">आर्किटेक्चर</a> •
|
|
53
|
+
<a href="CHANGELOG.md">परिवर्तन लॉग</a> •
|
|
54
|
+
<a href="CONTRIBUTING.md">योगदान</a>
|
|
55
|
+
</p>
|
|
56
|
+
|
|
57
|
+
<p align="center">
|
|
58
|
+
<a href="https://www.npmjs.com/package/fingerprint-mcp"><img src="https://img.shields.io/npm/v/fingerprint-mcp.svg" alt="npm"></a>
|
|
59
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-AGPL--3.0-blue.svg" alt="लाइसेंस"></a>
|
|
60
|
+
<img src="https://img.shields.io/badge/runtime-Bun-f472b6" alt="Bun">
|
|
61
|
+
<img src="https://img.shields.io/badge/protocol-MCP-8b5cf6" alt="MCP">
|
|
62
|
+
<img src="https://img.shields.io/badge/tools-13-ef4444" alt="13 टूल">
|
|
63
|
+
<img src="https://img.shields.io/badge/techniques-103-f97316" alt="103 तकनीक">
|
|
64
|
+
</p>
|
|
65
|
+
|
|
66
|
+
<p align="center">
|
|
67
|
+
<img src="https://raw.githubusercontent.com/badchars/fingerprint-mcp/main/.github/demo.gif" alt="fingerprint-mcp डेमो" width="800">
|
|
68
|
+
</p>
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## समस्या
|
|
73
|
+
|
|
74
|
+
आज किसी सर्वर का फिंगरप्रिंट लेने का मतलब है एक दर्जन अलग-अलग टूल्स से जूझना। आप पोर्ट स्कैनिंग के लिए `nmap`, सर्टिफिकेट विश्लेषण के लिए `testssl.sh`, HTTP हेडर्स के लिए `curl -I`, DNS के लिए `dig`, WAF डिटेक्शन के लिए `wafw00f`, SSH के लिए `ssh-audit`, एक अलग JARM टूल, टेक्नोलॉजी डिटेक्शन के लिए Wappalyzer चलाते हैं — और फिर वास्तव में क्या चल रहा है यह जानने के लिए सब कुछ एक स्प्रेडशीट में मैनुअली क्रॉस-रेफरेंस करने में 30 मिनट लगाते हैं।
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
पारंपरिक फिंगरप्रिंटिंग वर्कफ्लो:
|
|
78
|
+
TLS सर्टिफिकेट विश्लेषण -> testssl.sh / openssl s_client
|
|
79
|
+
HTTP हेडर्स प्राप्त करना -> curl -I
|
|
80
|
+
वेब टेक्नोलॉजी डिटेक्शन -> wappalyzer CLI
|
|
81
|
+
DNS रिकनेसान्स -> dig / nslookup / dnsenum
|
|
82
|
+
पोर्ट स्कैनिंग -> nmap -sV
|
|
83
|
+
WAF डिटेक्शन -> wafw00f
|
|
84
|
+
SSH ऑडिट -> ssh-audit
|
|
85
|
+
सर्विस फिंगरप्रिंटिंग -> nmap scripts
|
|
86
|
+
JARM फिंगरप्रिंट -> jarm (अलग टूल)
|
|
87
|
+
OSINT डेटाबेस जांच -> shodan CLI, censys CLI
|
|
88
|
+
सब कुछ कोरिलेट करना -> मैनुअली स्प्रेडशीट में
|
|
89
|
+
──────────────────────────────
|
|
90
|
+
कुल: 11 टूल, 30+ मिनट, मैनुअल कोरिलेशन
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**fingerprint-mcp** आपके AI एजेंट को [Model Context Protocol](https://modelcontextprotocol.io) के माध्यम से 21 प्रदाताओं में 103 फिंगरप्रिंटिंग तकनीकों को कवर करने वाले 13 कम्पोजिट टूल देता है। एजेंट बहु-स्तरीय फिंगरप्रिंटिंग समानांतर में चलाता है, TCP/TLS/HTTP/DNS/SSH लेयर्स में सिग्नल कोरिलेट करता है, हनीपॉट और C2 इंफ्रास्ट्रक्चर का पता लगाता है, और एक एकीकृत इंटेलिजेंस चित्र प्रस्तुत करता है — एक ही बातचीत में।
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
fingerprint-mcp के साथ:
|
|
97
|
+
आप: "target.com पर डीप रिकन करो"
|
|
98
|
+
|
|
99
|
+
एजेंट: -> recon {url: "https://target.com", depth: "deep"}
|
|
100
|
+
|
|
101
|
+
-> TLS: JARM (3fd21b20d00000...) के माध्यम से nginx/1.24.0,
|
|
102
|
+
Let's Encrypt सर्टिफिकेट, 2 SAN, TLS 1.2+1.3
|
|
103
|
+
-> HTTP: Cloudflare WAF के पीछे Express.js,
|
|
104
|
+
React SPA, Google Analytics, 14 सुरक्षा हेडर्स विश्लेषित
|
|
105
|
+
-> DNS: A/AAAA/MX/TXT रिकॉर्ड, SPF/DKIM/DMARC कॉन्फ़िगर,
|
|
106
|
+
CNAME/MX के माध्यम से Slack + Google Workspace डिटेक्ट
|
|
107
|
+
-> पोर्ट: 80, 443, 22 (OpenSSH 9.6), 8080 (dev सर्वर)
|
|
108
|
+
-> WAF: Cloudflare डिटेक्ट, direct-connect के माध्यम से ओरिजिन IP पता चला
|
|
109
|
+
-> एन्यूमरेशन: CT लॉग के माध्यम से 12 सबडोमेन, wildcard DNS डिटेक्ट
|
|
110
|
+
-> "target.com Cloudflare WAF के पीछे Express.js के साथ nginx/1.24.0 चला रहा है।
|
|
111
|
+
ओरिजिन IP 203.0.113.42 पोर्ट 8080 पर एक्सपोज़्ड है।
|
|
112
|
+
TLS ठीक से कॉन्फ़िगर है (A+ समतुल्य) लेकिन 8080 पर dev सर्वर
|
|
113
|
+
में कोई WAF सुरक्षा नहीं है। 3 सबडोमेन निष्क्रिय
|
|
114
|
+
इंफ्रास्ट्रक्चर की ओर इशारा करते हैं — संभावित टेकओवर जोखिम।"
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## यह कैसे अलग है
|
|
120
|
+
|
|
121
|
+
मौजूदा टूल आपको एक बार में एक लेयर का कच्चा डेटा देते हैं। fingerprint-mcp आपके AI एजेंट को **सभी फिंगरप्रिंटिंग लेयर्स में एक साथ तर्क करने** की क्षमता देता है।
|
|
122
|
+
|
|
123
|
+
<table>
|
|
124
|
+
<thead>
|
|
125
|
+
<tr>
|
|
126
|
+
<th></th>
|
|
127
|
+
<th>पारंपरिक दृष्टिकोण</th>
|
|
128
|
+
<th>fingerprint-mcp</th>
|
|
129
|
+
</tr>
|
|
130
|
+
</thead>
|
|
131
|
+
<tbody>
|
|
132
|
+
<tr>
|
|
133
|
+
<td><b>इंटरफेस</b></td>
|
|
134
|
+
<td>अलग-अलग आउटपुट फॉर्मेट वाले 11 अलग CLI टूल</td>
|
|
135
|
+
<td>MCP — AI एजेंट बातचीत के माध्यम से टूल कॉल करता है</td>
|
|
136
|
+
</tr>
|
|
137
|
+
<tr>
|
|
138
|
+
<td><b>तकनीक</b></td>
|
|
139
|
+
<td>एक टूल, एक बार में एक लेयर</td>
|
|
140
|
+
<td>21 प्रदाताओं में 103 तकनीक, समानांतर में चलती हैं</td>
|
|
141
|
+
</tr>
|
|
142
|
+
<tr>
|
|
143
|
+
<td><b>TLS विश्लेषण</b></td>
|
|
144
|
+
<td>testssl.sh आउटपुट, अलग से मैनुअली JARM पार्स करना</td>
|
|
145
|
+
<td>एजेंट सर्टिफिकेट + JARM + JA4X + cipher suites + SNI + CT लॉग एक कॉल में जोड़ता है</td>
|
|
146
|
+
</tr>
|
|
147
|
+
<tr>
|
|
148
|
+
<td><b>कोरिलेशन</b></td>
|
|
149
|
+
<td>परिणामों को स्प्रेडशीट में कॉपी-पेस्ट करना</td>
|
|
150
|
+
<td>एजेंट क्रॉस-कोरिलेट करता है: "JARM ज्ञात C2 फ्रेमवर्क से मेल खाता है, HTTP टाइमिंग हनीपॉट की पुष्टि करता है"</td>
|
|
151
|
+
</tr>
|
|
152
|
+
<tr>
|
|
153
|
+
<td><b>WAF बाइपास</b></td>
|
|
154
|
+
<td>wafw00f WAF डिटेक्ट करता है, आप मैनुअली ओरिजिन ढूंढते हैं</td>
|
|
155
|
+
<td>एजेंट WAF डिटेक्ट करता है, ओरिजिन IP खोजता है, और सत्यापित करता है कि वह वही कंटेंट सर्व करता है</td>
|
|
156
|
+
</tr>
|
|
157
|
+
<tr>
|
|
158
|
+
<td><b>API कुंजियाँ</b></td>
|
|
159
|
+
<td>Shodan, Censys आदि के लिए आवश्यक</td>
|
|
160
|
+
<td>80+ सक्रिय तकनीक बिना किसी API कुंजी के काम करती हैं; कुंजियाँ OSINT एनरिचमेंट अनलॉक करती हैं</td>
|
|
161
|
+
</tr>
|
|
162
|
+
<tr>
|
|
163
|
+
<td><b>सेटअप</b></td>
|
|
164
|
+
<td>nmap, testssl, wafw00f, ssh-audit, jarm, wappalyzer... इंस्टॉल करें</td>
|
|
165
|
+
<td><code>npx fingerprint-mcp</code> — एक कमांड, शून्य कॉन्फ़िगरेशन</td>
|
|
166
|
+
</tr>
|
|
167
|
+
</tbody>
|
|
168
|
+
</table>
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## त्वरित शुरुआत
|
|
173
|
+
|
|
174
|
+
### विकल्प 1: npx (बिना इंस्टॉल)
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
npx fingerprint-mcp
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
सभी 80+ सक्रिय फिंगरप्रिंटिंग तकनीक तुरंत काम करती हैं। TCP, TLS, SSH, HTTP, DNS, WAF, पाथ, सर्विस, टाइमिंग, IoT, SMTP, इंफ्रास्ट्रक्चर और एप्लिकेशन फिंगरप्रिंटिंग के लिए कोई API कुंजी आवश्यक नहीं।
|
|
181
|
+
|
|
182
|
+
### विकल्प 2: क्लोन
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
git clone https://github.com/badchars/fingerprint-mcp.git
|
|
186
|
+
cd fingerprint-mcp
|
|
187
|
+
bun install
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### एनवायरनमेंट वेरिएबल (वैकल्पिक)
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
# OSINT एनरिचमेंट (सभी वैकल्पिक — सक्रिय फिंगरप्रिंटिंग बिना किसी कुंजी के काम करती है)
|
|
194
|
+
export SHODAN_API_KEY=your-key # osint_shodan, ssh_hostkey_lookup सक्षम करता है
|
|
195
|
+
export CENSYS_API_ID=your-id # osint_censys सक्षम करता है (मुफ्त: 250 क्वेरी/माह)
|
|
196
|
+
export CENSYS_API_SECRET=your-secret # Censys API सीक्रेट
|
|
197
|
+
export SECURITYTRAILS_API_KEY=your-key # waf_origin, enum_passive_dns सक्षम करता है
|
|
198
|
+
export VIRUSTOTAL_API_KEY=your-key # osint_virustotal सक्षम करता है (मुफ्त: 500 क्वेरी/दिन)
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
सभी API कुंजियाँ वैकल्पिक हैं। इनके बिना, आपको अभी भी पूर्ण TCP/TLS/SSH/HTTP/DNS/WAF/पाथ/सर्विस/टाइमिंग/IoT/SMTP/इंफ्रास्ट्रक्चर/एप्लिकेशन फिंगरप्रिंटिंग, कोरिलेशन, पैसिव विश्लेषण, एन्यूमरेशन और मेटा टूल मिलते हैं — 80+ तकनीक जो सीधे लक्ष्य को प्रोब करके काम करती हैं।
|
|
202
|
+
|
|
203
|
+
### अपने AI एजेंट से कनेक्ट करें
|
|
204
|
+
|
|
205
|
+
<details open>
|
|
206
|
+
<summary><b>Claude Code</b></summary>
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
# npx के साथ
|
|
210
|
+
claude mcp add fingerprint-mcp -- npx fingerprint-mcp
|
|
211
|
+
|
|
212
|
+
# लोकल क्लोन के साथ
|
|
213
|
+
claude mcp add fingerprint-mcp -- bun run /path/to/fingerprint-mcp/src/index.ts
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
</details>
|
|
217
|
+
|
|
218
|
+
<details>
|
|
219
|
+
<summary><b>Claude Desktop</b></summary>
|
|
220
|
+
|
|
221
|
+
`~/Library/Application Support/Claude/claude_desktop_config.json` में जोड़ें:
|
|
222
|
+
|
|
223
|
+
```json
|
|
224
|
+
{
|
|
225
|
+
"mcpServers": {
|
|
226
|
+
"fingerprint": {
|
|
227
|
+
"command": "npx",
|
|
228
|
+
"args": ["-y", "fingerprint-mcp"],
|
|
229
|
+
"env": {
|
|
230
|
+
"SHODAN_API_KEY": "optional",
|
|
231
|
+
"CENSYS_API_ID": "optional",
|
|
232
|
+
"CENSYS_API_SECRET": "optional",
|
|
233
|
+
"SECURITYTRAILS_API_KEY": "optional",
|
|
234
|
+
"VIRUSTOTAL_API_KEY": "optional"
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
</details>
|
|
242
|
+
|
|
243
|
+
<details>
|
|
244
|
+
<summary><b>Cursor / Windsurf / अन्य MCP क्लाइंट</b></summary>
|
|
245
|
+
|
|
246
|
+
वही JSON कॉन्फ़िगरेशन फॉर्मेट। कमांड को `npx fingerprint-mcp` या अपने लोकल इंस्टॉलेशन पाथ की ओर पॉइंट करें।
|
|
247
|
+
|
|
248
|
+
</details>
|
|
249
|
+
|
|
250
|
+
### क्वेरी शुरू करें
|
|
251
|
+
|
|
252
|
+
```
|
|
253
|
+
आप: "target.com के बारे में सब कुछ फिंगरप्रिंट करो — TLS, HTTP स्टैक, WAF, DNS, खुले पोर्ट"
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
बस इतना ही। एजेंट स्वचालित रूप से बहु-स्तरीय फिंगरप्रिंटिंग, सिग्नल कोरिलेशन और इंफ्रास्ट्रक्चर विश्लेषण संभालता है।
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## AI क्या कर सकता है
|
|
261
|
+
|
|
262
|
+
### त्वरित रिकन
|
|
263
|
+
|
|
264
|
+
```
|
|
265
|
+
आप: "target.com का त्वरित रिकन"
|
|
266
|
+
|
|
267
|
+
एजेंट: -> recon {url: "https://target.com", depth: "quick"}
|
|
268
|
+
|
|
269
|
+
-> TCP: पोर्ट 80, 443, 22 खुले
|
|
270
|
+
-> TLS: Let's Encrypt RSA सर्टिफिकेट, TLS 1.2+1.3, nginx JARM सिग्नेचर
|
|
271
|
+
-> HTTP: nginx/1.24.0, Express.js, React, Cloudflare CDN
|
|
272
|
+
-> DNS: A 203.0.113.42, MX Google Workspace, SPF/DKIM कॉन्फ़िगर
|
|
273
|
+
-> WAF: Cloudflare डिटेक्ट (cf-ray हेडर)
|
|
274
|
+
-> "target.com nginx/1.24.0 के पीछे Express.js पर एक React SPA है,
|
|
275
|
+
Cloudflare CDN के माध्यम से सर्व किया जा रहा है। Let's Encrypt के साथ
|
|
276
|
+
TLS ठीक से कॉन्फ़िगर है। पोर्ट 22 पर SSH OpenSSH 9.6 चला रहा है। ईमेल
|
|
277
|
+
पूर्ण SPF/DKIM/DMARC के साथ Google Workspace द्वारा हैंडल।"
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### गहन TLS जांच
|
|
281
|
+
|
|
282
|
+
```
|
|
283
|
+
आप: "suspicious-server.com का TLS कॉन्फ़िगरेशन विस्तार से विश्लेषण करो"
|
|
284
|
+
|
|
285
|
+
एजेंट: -> scan_tls {host: "suspicious-server.com"}
|
|
286
|
+
|
|
287
|
+
-> सर्टिफिकेट: सेल्फ-साइन्ड, CN=localhost, 47 दिन पहले एक्सपायर
|
|
288
|
+
-> JARM: 2ad2ad0002ad2ad00042d42d00000069d641f34fe76acdc05c40262f8815e5
|
|
289
|
+
(Cobalt Strike डिफ़ॉल्ट प्रोफाइल से मेल खाता है)
|
|
290
|
+
-> JA4X: फिंगरप्रिंट ज्ञात C2 फ्रेमवर्क पैटर्न से मेल खाता है
|
|
291
|
+
-> Cipher suites: कमज़ोर सिफर स्वीकार करता है (RC4, 3DES)
|
|
292
|
+
-> SNI: किसी भी SNI मान के लिए समान रूप से प्रतिक्रिया करता है
|
|
293
|
+
-> CT लॉग: सर्टिफिकेट लॉग नहीं किया गया (सार्वजनिक रूप से विश्वसनीय नहीं)
|
|
294
|
+
-> "उच्च जोखिम: TLS कॉन्फ़िगरेशन दृढ़ता से C2 इंफ्रास्ट्रक्चर इंगित करता है।
|
|
295
|
+
सेल्फ-साइन्ड एक्सपायर्ड सर्टिफिकेट, JARM फिंगरप्रिंट Cobalt Strike से मेल खाता है,
|
|
296
|
+
कमज़ोर सिफर स्वीकार करता है, और मनमाने SNI मानों पर प्रतिक्रिया करता है।
|
|
297
|
+
तत्काल जांच और ब्लॉकिंग की सिफारिश।"
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### WAF बाइपास और ओरिजिन खोज
|
|
301
|
+
|
|
302
|
+
```
|
|
303
|
+
आप: "target.com WAF के पीछे है। क्या तुम ओरिजिन सर्वर ढूंढ सकते हो?"
|
|
304
|
+
|
|
305
|
+
एजेंट: -> scan_waf {url: "https://target.com"}
|
|
306
|
+
-> scan_dns {domain: "target.com"}
|
|
307
|
+
-> enumerate {domain: "target.com"}
|
|
308
|
+
|
|
309
|
+
-> WAF: Cloudflare (AS13335), संदिग्ध अनुरोधों पर चैलेंज पेज
|
|
310
|
+
-> DNS: A रिकॉर्ड Cloudflare IP 104.21.x.x की ओर इशारा करता है
|
|
311
|
+
-> सबडोमेन: dev.target.com 203.0.113.42 पर रिज़ॉल्व होता है (गैर-Cloudflare)
|
|
312
|
+
-> 203.0.113.42:443 पर सीधा कनेक्शन वही TLS सर्टिफिकेट लौटाता है
|
|
313
|
+
-> SecurityTrails इतिहास: Cloudflare से पहले ओरिजिन 203.0.113.42 था
|
|
314
|
+
-> "ओरिजिन IP मिला: 203.0.113.42। dev.target.com सबडोमेन के
|
|
315
|
+
माध्यम से खोजा गया जो Cloudflare को बाइपास करता है। ओरिजिन वही
|
|
316
|
+
TLS सर्टिफिकेट सर्व करता है और target.com Host हेडर पर प्रतिक्रिया करता है।
|
|
317
|
+
ओरिजिन में कोई WAF सुरक्षा नहीं — सीधी पहुंच संभव।"
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### होस्ट पर सर्विस खोज
|
|
321
|
+
|
|
322
|
+
```
|
|
323
|
+
आप: "10.0.1.50 पर कौन सी सर्विसेज चल रही हैं?"
|
|
324
|
+
|
|
325
|
+
एजेंट: -> scan_ports {host: "10.0.1.50"}
|
|
326
|
+
-> scan_services {host: "10.0.1.50", ports: [22, 80, 3306, 5432, 6379, 8080]}
|
|
327
|
+
|
|
328
|
+
-> पोर्ट 22: OpenSSH 8.9p1 Ubuntu, ED25519 होस्ट कुंजी
|
|
329
|
+
-> पोर्ट 80: Apache/2.4.57, PHP/8.2, WordPress 6.4
|
|
330
|
+
-> पोर्ट 3306: MySQL 8.0.36, प्रमाणीकरण आवश्यक
|
|
331
|
+
-> पोर्ट 5432: PostgreSQL 16.1, SSL आवश्यक
|
|
332
|
+
-> पोर्ट 6379: Redis 7.2.4, कोई प्रमाणीकरण नहीं (खुला)
|
|
333
|
+
-> पोर्ट 8080: Node.js Express dev सर्वर, CORS: *
|
|
334
|
+
-> "गंभीर: पोर्ट 6379 पर Redis में कोई प्रमाणीकरण नहीं — नेटवर्क पर
|
|
335
|
+
कोई भी डेटा पढ़/लिख सकता है। 8080 पर Express dev सर्वर में
|
|
336
|
+
वाइल्डकार्ड CORS है। MySQL और PostgreSQL ठीक से प्रमाणीकरण
|
|
337
|
+
की आवश्यकता रखते हैं। WordPress 2 माइनर वर्शन पीछे है।
|
|
338
|
+
Redis और dev सर्वर एक्सपोज़र पर तत्काल कार्रवाई आवश्यक।"
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
## टूल संदर्भ (13 टूल, 103 तकनीक)
|
|
344
|
+
|
|
345
|
+
<details open>
|
|
346
|
+
<summary><b>recon — गहराई-आधारित तकनीक चयन के साथ पूर्ण रिकनेसान्स</b></summary>
|
|
347
|
+
|
|
348
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
349
|
+
|----------|--------|-------|
|
|
350
|
+
| `url` | string | फिंगरप्रिंट करने के लिए लक्ष्य URL |
|
|
351
|
+
| `depth` | `quick` \| `standard` \| `deep` | स्कैन गहराई: quick=5 तकनीक, standard=20, deep=50+ |
|
|
352
|
+
|
|
353
|
+
गहराई स्तर के आधार पर सभी प्रदाताओं से तकनीकों को ऑर्केस्ट्रेट करता है। क्विक मोड तेज़ अवलोकन देता है; डीप मोड एन्यूमरेशन, OSINT और कोरिलेशन सहित संपूर्ण फिंगरप्रिंटिंग चलाता है।
|
|
354
|
+
|
|
355
|
+
</details>
|
|
356
|
+
|
|
357
|
+
<details>
|
|
358
|
+
<summary><b>scan_ports — सर्विस डिटेक्शन के साथ TCP पोर्ट स्कैनिंग (3 तकनीक)</b></summary>
|
|
359
|
+
|
|
360
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
361
|
+
|----------|--------|-------|
|
|
362
|
+
| `host` | string | लक्ष्य होस्ट (IP या डोमेन) |
|
|
363
|
+
| `ports` | number[] | वैकल्पिक — स्कैन करने के लिए विशिष्ट पोर्ट (डिफ़ॉल्ट सामान्य पोर्ट) |
|
|
364
|
+
|
|
365
|
+
| तकनीक | विवरण |
|
|
366
|
+
|--------|-------|
|
|
367
|
+
| `tcp_probe` | खुले पोर्ट का पता लगाने के लिए TCP connect स्कैन |
|
|
368
|
+
| `tcp_banner` | सर्विस पहचान के लिए खुले पोर्ट पर बैनर ग्रैबिंग |
|
|
369
|
+
| `tcp_analysis` | पोर्ट संयोजन विश्लेषण और सर्विस अनुमान |
|
|
370
|
+
|
|
371
|
+
</details>
|
|
372
|
+
|
|
373
|
+
<details>
|
|
374
|
+
<summary><b>scan_tls — पूर्ण TLS/SSL विश्लेषण (8 तकनीक)</b></summary>
|
|
375
|
+
|
|
376
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
377
|
+
|----------|--------|-------|
|
|
378
|
+
| `host` | string | लक्ष्य होस्ट (IP या डोमेन) |
|
|
379
|
+
| `port` | number | वैकल्पिक — TLS पोर्ट (डिफ़ॉल्ट: 443) |
|
|
380
|
+
|
|
381
|
+
| तकनीक | विवरण |
|
|
382
|
+
|--------|-------|
|
|
383
|
+
| `tls_certificate` | X.509 सर्टिफिकेट पार्सिंग — विषय, जारीकर्ता, SAN, वैधता, चेन |
|
|
384
|
+
| `tls_jarm` | JARM सक्रिय फिंगरप्रिंटिंग — 10 TLS Client Hello प्रोब, 62-अक्षर हैश |
|
|
385
|
+
| `tls_ja4x` | सर्टिफिकेट गुणों से JA4X पैसिव TLS फिंगरप्रिंटिंग |
|
|
386
|
+
| `tls_ciphers` | Cipher suite एन्यूमरेशन और शक्ति विश्लेषण |
|
|
387
|
+
| `tls_protocols` | समर्थित TLS प्रोटोकॉल वर्शन डिटेक्शन (SSLv3 से TLS 1.3) |
|
|
388
|
+
| `tls_sni` | SNI व्यवहार परीक्षण — डिफ़ॉल्ट सर्टिफिकेट बनाम अनुरोधित hostname |
|
|
389
|
+
| `tls_ct_logs` | crt.sh के माध्यम से Certificate Transparency लॉग लुकअप |
|
|
390
|
+
| `tls_ocsp` | OCSP stapling और निरस्तीकरण स्थिति जांच |
|
|
391
|
+
|
|
392
|
+
</details>
|
|
393
|
+
|
|
394
|
+
<details>
|
|
395
|
+
<summary><b>scan_dns — DNS इंटेलिजेंस (7 तकनीक)</b></summary>
|
|
396
|
+
|
|
397
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
398
|
+
|----------|--------|-------|
|
|
399
|
+
| `domain` | string | लक्ष्य डोमेन |
|
|
400
|
+
|
|
401
|
+
| तकनीक | विवरण |
|
|
402
|
+
|--------|-------|
|
|
403
|
+
| `dns_records` | पूर्ण रिकॉर्ड एन्यूमरेशन — A, AAAA, MX, NS, TXT, CNAME, SOA |
|
|
404
|
+
| `dns_email_auth` | SPF, DKIM और DMARC रिकॉर्ड विश्लेषण |
|
|
405
|
+
| `dns_saas` | CNAME और MX पैटर्न के माध्यम से SaaS/सर्विस डिटेक्शन (Slack, Zendesk आदि) |
|
|
406
|
+
| `dns_server` | DNS सर्वर फिंगरप्रिंटिंग (BIND, PowerDNS, Cloudflare आदि) |
|
|
407
|
+
| `dns_takeover` | डैंगलिंग CNAME विश्लेषण के माध्यम से सबडोमेन टेकओवर डिटेक्शन |
|
|
408
|
+
| `dns_zone` | ज़ोन ट्रांसफर प्रयास (AXFR) |
|
|
409
|
+
| `dns_caa` | सर्टिफिकेट अथॉरिटी प्रतिबंधों के लिए CAA रिकॉर्ड विश्लेषण |
|
|
410
|
+
|
|
411
|
+
</details>
|
|
412
|
+
|
|
413
|
+
<details>
|
|
414
|
+
<summary><b>scan_http — HTTP/वेब फिंगरप्रिंटिंग (29 तकनीक)</b></summary>
|
|
415
|
+
|
|
416
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
417
|
+
|----------|--------|-------|
|
|
418
|
+
| `url` | string | लक्ष्य URL |
|
|
419
|
+
|
|
420
|
+
| तकनीक | प्रदाता | विवरण |
|
|
421
|
+
|--------|---------|-------|
|
|
422
|
+
| `http_headers` | HTTP | रिस्पॉन्स हेडर विश्लेषण और सर्वर पहचान |
|
|
423
|
+
| `http_header_order` | HTTP | हेडर ऑर्डरिंग फिंगरप्रिंट (सर्वर सॉफ्टवेयर सिग्नेचर) |
|
|
424
|
+
| `http_security_headers` | HTTP | सुरक्षा हेडर ऑडिट (CSP, HSTS, X-Frame-Options आदि) |
|
|
425
|
+
| `http_cookies` | HTTP | कुकी विश्लेषण — फ्लैग, प्रीफिक्स, फ्रेमवर्क डिटेक्शन |
|
|
426
|
+
| `http_methods` | HTTP | अनुमत HTTP मेथड एन्यूमरेशन (OPTIONS) |
|
|
427
|
+
| `http_cors` | HTTP | CORS नीति विश्लेषण और गलत कॉन्फ़िगरेशन डिटेक्शन |
|
|
428
|
+
| `http_compression` | HTTP | समर्थित कम्प्रेशन एल्गोरिथम (gzip, br, zstd) |
|
|
429
|
+
| `http_caching` | HTTP | कैश हेडर विश्लेषण (CDN, रिवर्स प्रॉक्सी डिटेक्शन) |
|
|
430
|
+
| `http_etag` | HTTP | बैकएंड पहचान के लिए ETag फॉर्मेट विश्लेषण |
|
|
431
|
+
| `http_error` | HTTP | एरर पेज फिंगरप्रिंटिंग (कस्टम बनाम डिफ़ॉल्ट एरर पेज) |
|
|
432
|
+
| `http_redirect` | HTTP | रीडायरेक्ट चेन विश्लेषण |
|
|
433
|
+
| `http_timing` | HTTP | सर्वर प्रदर्शन प्रोफाइलिंग के लिए रिस्पॉन्स टाइमिंग बेसलाइन |
|
|
434
|
+
| `http_favicon` | HTTP | टेक्नोलॉजी पहचान के लिए फेविकॉन हैश (MurmurHash3) |
|
|
435
|
+
| `http_robots` | HTTP | robots.txt पार्सिंग और प्रतिबंधित पाथ निष्कर्षण |
|
|
436
|
+
| `http_sitemap` | HTTP | साइटमैप खोज और URL निष्कर्षण |
|
|
437
|
+
| `http_wellknown` | HTTP | .well-known एंडपॉइंट खोज (security.txt, openid आदि) |
|
|
438
|
+
| `web_tech` | Web | HTML/JS/CSS पैटर्न के माध्यम से टेक्नोलॉजी डिटेक्शन |
|
|
439
|
+
| `web_analytics` | Web | एनालिटिक्स और ट्रैकिंग सर्विस डिटेक्शन |
|
|
440
|
+
| `web_sourcemaps` | Web | सोर्स मैप फाइल खोज |
|
|
441
|
+
| `web_websocket` | Web | WebSocket एंडपॉइंट डिटेक्शन |
|
|
442
|
+
| `web_graphql` | Web | GraphQL एंडपॉइंट डिटेक्शन और इंट्रोस्पेक्शन |
|
|
443
|
+
| `web_spa` | Web | सिंगल-पेज एप्लिकेशन फ्रेमवर्क डिटेक्शन |
|
|
444
|
+
| `web_cdn` | Web | रिस्पॉन्स हेडर और DNS के माध्यम से CDN डिटेक्शन |
|
|
445
|
+
| `web_meta` | Web | HTML मेटा टैग विश्लेषण (जेनरेटर, फ्रेमवर्क संकेत) |
|
|
446
|
+
| `web_feed` | Web | RSS/Atom फीड खोज |
|
|
447
|
+
| `h2_detect` | HTTP/2 | HTTP/2 प्रोटोकॉल सपोर्ट डिटेक्शन |
|
|
448
|
+
| `h2_fingerprint` | HTTP/2 | HTTP/2 सर्वर फिंगरप्रिंटिंग (SETTINGS, WINDOW_UPDATE) |
|
|
449
|
+
| `h2_h3` | HTTP/2 | Alt-Svc हेडर के माध्यम से HTTP/3 (QUIC) सपोर्ट डिटेक्शन |
|
|
450
|
+
| `app_cms` | Application | CMS डिटेक्शन (WordPress, Drupal, Joomla आदि) |
|
|
451
|
+
|
|
452
|
+
</details>
|
|
453
|
+
|
|
454
|
+
<details>
|
|
455
|
+
<summary><b>scan_paths — पाथ इंटेलिजेंस (5 तकनीक)</b></summary>
|
|
456
|
+
|
|
457
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
458
|
+
|----------|--------|-------|
|
|
459
|
+
| `url` | string | लक्ष्य URL |
|
|
460
|
+
| `categories` | string[] | वैकल्पिक — जांच करने के लिए श्रेणियां (sensitive, git, debug, api, config) |
|
|
461
|
+
|
|
462
|
+
| तकनीक | विवरण |
|
|
463
|
+
|--------|-------|
|
|
464
|
+
| `path_sensitive` | संवेदनशील फाइल खोज (बैकअप फाइलें, कॉन्फ़िग फाइलें, डेटाबेस डंप) |
|
|
465
|
+
| `path_robots` | छिपे हुए पाथ के लिए robots.txt और sitemap.xml विश्लेषण |
|
|
466
|
+
| `path_git` | Git रिपॉजिटरी लीक डिटेक्शन (.git/HEAD, .git/config) |
|
|
467
|
+
| `path_debug` | डीबग एंडपॉइंट खोज (phpinfo, server-status, डीबग कंसोल) |
|
|
468
|
+
| `path_api` | API वर्शन और डॉक्यूमेंटेशन एंडपॉइंट खोज |
|
|
469
|
+
|
|
470
|
+
</details>
|
|
471
|
+
|
|
472
|
+
<details>
|
|
473
|
+
<summary><b>scan_waf — WAF/CDN डिटेक्शन और फिंगरप्रिंटिंग (4 तकनीक)</b></summary>
|
|
474
|
+
|
|
475
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
476
|
+
|----------|--------|-------|
|
|
477
|
+
| `url` | string | लक्ष्य URL |
|
|
478
|
+
|
|
479
|
+
| तकनीक | विवरण |
|
|
480
|
+
|--------|-------|
|
|
481
|
+
| `waf_detect` | रिस्पॉन्स हेडर और व्यवहार विश्लेषण के माध्यम से WAF उपस्थिति डिटेक्शन |
|
|
482
|
+
| `waf_cdn` | CDN प्रदाता पहचान (Cloudflare, Akamai, Fastly आदि) |
|
|
483
|
+
| `waf_fingerprint` | WAF उत्पाद पहचान और वर्शन डिटेक्शन |
|
|
484
|
+
| `waf_origin` | WAF/CDN के पीछे ओरिजिन IP खोज (`SECURITYTRAILS_API_KEY` आवश्यक) |
|
|
485
|
+
|
|
486
|
+
</details>
|
|
487
|
+
|
|
488
|
+
<details>
|
|
489
|
+
<summary><b>scan_services — सर्विस-स्तर प्रोबिंग (12 तकनीक)</b></summary>
|
|
490
|
+
|
|
491
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
492
|
+
|----------|--------|-------|
|
|
493
|
+
| `host` | string | लक्ष्य होस्ट (IP या डोमेन) |
|
|
494
|
+
| `ports` | number[] | वैकल्पिक — प्रोब करने के लिए विशिष्ट पोर्ट |
|
|
495
|
+
| `service` | string | वैकल्पिक — प्रोब करने के लिए विशिष्ट सर्विस (mysql, postgres, redis, ftp, ssh, smtp, vnc, iot) |
|
|
496
|
+
|
|
497
|
+
| तकनीक | प्रदाता | विवरण |
|
|
498
|
+
|--------|---------|-------|
|
|
499
|
+
| `ssh_probe` | SSH | SSH प्रोटोकॉल वर्शन और सॉफ्टवेयर डिटेक्शन |
|
|
500
|
+
| `ssh_algorithms` | SSH | SSH एल्गोरिथम ऑडिट (KEX, सिफर, MAC, होस्ट कुंजी प्रकार) |
|
|
501
|
+
| `ssh_hostkey_lookup` | SSH | Shodan के माध्यम से SSH होस्ट कुंजी लुकअप (`SHODAN_API_KEY` आवश्यक) |
|
|
502
|
+
| `svc_mysql` | Service | MySQL वर्शन डिटेक्शन और क्षमता फिंगरप्रिंटिंग |
|
|
503
|
+
| `svc_postgres` | Service | PostgreSQL वर्शन डिटेक्शन और SSL सपोर्ट जांच |
|
|
504
|
+
| `svc_redis` | Service | Redis वर्शन डिटेक्शन और प्रमाणीकरण स्थिति |
|
|
505
|
+
| `svc_ftp` | Service | FTP बैनर विश्लेषण और अनाम लॉगिन जांच |
|
|
506
|
+
| `svc_vnc_rdp` | Service | VNC/RDP सर्विस डिटेक्शन और सुरक्षा मूल्यांकन |
|
|
507
|
+
| `smtp_banner` | SMTP | SMTP बैनर विश्लेषण और MTA पहचान |
|
|
508
|
+
| `smtp_starttls` | SMTP | SMTP STARTTLS सपोर्ट और सर्टिफिकेट निरीक्षण |
|
|
509
|
+
| `iot_detect` | IoT | बैनर पैटर्न और डिफ़ॉल्ट पेजों के माध्यम से IoT डिवाइस डिटेक्शन |
|
|
510
|
+
| `iot_upnp` | IoT | लोकल नेटवर्क पर UPnP/SSDP डिवाइस खोज |
|
|
511
|
+
|
|
512
|
+
</details>
|
|
513
|
+
|
|
514
|
+
<details>
|
|
515
|
+
<summary><b>enumerate — दायरा विस्तार (8 तकनीक)</b></summary>
|
|
516
|
+
|
|
517
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
518
|
+
|----------|--------|-------|
|
|
519
|
+
| `domain` | string | लक्ष्य डोमेन |
|
|
520
|
+
|
|
521
|
+
| तकनीक | विवरण |
|
|
522
|
+
|--------|-------|
|
|
523
|
+
| `enum_subdomains` | कई विधियों के माध्यम से सबडोमेन एन्यूमरेशन |
|
|
524
|
+
| `enum_wildcard` | वाइल्डकार्ड DNS डिटेक्शन |
|
|
525
|
+
| `enum_tld` | TLD विस्तार (target.com -> target.net, target.org आदि) |
|
|
526
|
+
| `enum_related` | साझा इंफ्रास्ट्रक्चर के माध्यम से संबंधित डोमेन खोज |
|
|
527
|
+
| `enum_asn` | ASN पड़ोसी खोज — एक ही नेटवर्क पर अन्य डोमेन |
|
|
528
|
+
| `enum_ct` | Certificate Transparency लॉग सबडोमेन निष्कर्षण |
|
|
529
|
+
| `enum_passive_dns` | पैसिव DNS इतिहास (`SECURITYTRAILS_API_KEY` आवश्यक) |
|
|
530
|
+
| `enum_scope` | दायरा सारांश और अटैक सरफेस अवलोकन |
|
|
531
|
+
|
|
532
|
+
</details>
|
|
533
|
+
|
|
534
|
+
<details>
|
|
535
|
+
<summary><b>osint — OSINT एनरिचमेंट (6 तकनीक)</b></summary>
|
|
536
|
+
|
|
537
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
538
|
+
|----------|--------|-------|
|
|
539
|
+
| `target` | string | एनरिच करने के लिए IP पता या डोमेन |
|
|
540
|
+
| `type` | `ip` \| `domain` | वैकल्पिक — लक्ष्य प्रकार (छोड़ने पर स्वतः पता लगाया जाता है) |
|
|
541
|
+
|
|
542
|
+
| तकनीक | प्रमाणीकरण | विवरण |
|
|
543
|
+
|--------|-----------|-------|
|
|
544
|
+
| `osint_shodan` | `SHODAN_API_KEY` | Shodan होस्ट लुकअप — खुले पोर्ट, बैनर, कमज़ोरियां, OS |
|
|
545
|
+
| `osint_censys` | `CENSYS_API_ID` + `CENSYS_API_SECRET` | Censys होस्ट डेटा — सर्विसेज, TLS, स्वायत्त प्रणाली |
|
|
546
|
+
| `osint_reverse_ip` | नहीं | रिवर्स IP लुकअप — एक ही IP पर अन्य डोमेन |
|
|
547
|
+
| `osint_whois` | नहीं | WHOIS पंजीकरण डेटा — रजिस्ट्रार, तिथियां, नेमसर्वर |
|
|
548
|
+
| `osint_webarchive` | नहीं | Web Archive इतिहास — पहला/अंतिम स्नैपशॉट, परिवर्तन आवृत्ति |
|
|
549
|
+
| `osint_virustotal` | `VIRUSTOTAL_API_KEY` | VirusTotal डोमेन/IP रिपोर्ट — डिटेक्शन, श्रेणियां, DNS |
|
|
550
|
+
|
|
551
|
+
</details>
|
|
552
|
+
|
|
553
|
+
<details>
|
|
554
|
+
<summary><b>analyze — पैसिव फिंगरप्रिंट विश्लेषण (3 मोड)</b></summary>
|
|
555
|
+
|
|
556
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
557
|
+
|----------|--------|-------|
|
|
558
|
+
| `type` | `headers` \| `html` \| `banner` | विश्लेषण करने के लिए डेटा का प्रकार |
|
|
559
|
+
| `data` | string | विश्लेषण करने के लिए कच्चा डेटा (हेडर, HTML या बैनर आउटपुट पेस्ट करें) |
|
|
560
|
+
|
|
561
|
+
| मोड | विवरण |
|
|
562
|
+
|------|-------|
|
|
563
|
+
| `fp_analyze_headers` | पैसिव HTTP हेडर विश्लेषण — ट्रैफिक भेजे बिना सर्वर, फ्रेमवर्क, प्रॉक्सी डिटेक्शन |
|
|
564
|
+
| `fp_analyze_html` | पैसिव HTML विश्लेषण — सोर्स से टेक्नोलॉजी डिटेक्शन, फ्रेमवर्क पहचान |
|
|
565
|
+
| `fp_analyze_banner` | पैसिव बैनर विश्लेषण — कच्चे बैनर टेक्स्ट से सर्विस पहचान |
|
|
566
|
+
|
|
567
|
+
</details>
|
|
568
|
+
|
|
569
|
+
<details>
|
|
570
|
+
<summary><b>correlate — बहु-सिग्नल कोरिलेशन इंजन (7 मोड)</b></summary>
|
|
571
|
+
|
|
572
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
573
|
+
|----------|--------|-------|
|
|
574
|
+
| `type` | `consistency` \| `honeypot` \| `spoofing` \| `compare` \| `topology` \| `c2` \| `identify` | कोरिलेशन मोड |
|
|
575
|
+
| `signals` | object | कोरिलेट करने के लिए फिंगरप्रिंट सिग्नल (मोड के अनुसार भिन्न) |
|
|
576
|
+
|
|
577
|
+
| मोड | विवरण |
|
|
578
|
+
|------|-------|
|
|
579
|
+
| `fp_consistency` | क्रॉस-लेयर सिग्नल संगति जांच — क्या TCP, TLS, HTTP और DNS फिंगरप्रिंट मेल खाते हैं? |
|
|
580
|
+
| `fp_honeypot` | हनीपॉट डिटेक्शन — असंभव सर्विस संयोजनों और व्यवहारिक विसंगतियों की जांच |
|
|
581
|
+
| `fp_spoofing` | स्पूफिंग डिटेक्शन — सर्वर हेडर बनाम वास्तविक व्यवहार की असंगति पहचान |
|
|
582
|
+
| `fp_compare` | दो होस्ट के फिंगरप्रिंट प्रोफाइल की साथ-साथ तुलना |
|
|
583
|
+
| `fp_topology` | इंफ्रास्ट्रक्चर टोपोलॉजी मैपिंग — CDN, लोड बैलेंसर, रिवर्स प्रॉक्सी चेन |
|
|
584
|
+
| `fp_c2` | JARM, TLS, HTTP और टाइमिंग कोरिलेशन के माध्यम से C2 फ्रेमवर्क डिटेक्शन |
|
|
585
|
+
| `fp_identify` | ज्ञात सिग्नेचर डेटाबेस के विरुद्ध हैश-आधारित पहचान |
|
|
586
|
+
|
|
587
|
+
</details>
|
|
588
|
+
|
|
589
|
+
<details>
|
|
590
|
+
<summary><b>meta — सर्वर कॉन्फ़िगरेशन और डेटा (3 मोड)</b></summary>
|
|
591
|
+
|
|
592
|
+
| पैरामीटर | प्रकार | विवरण |
|
|
593
|
+
|----------|--------|-------|
|
|
594
|
+
| `category` | string | वैकल्पिक — श्रेणी के अनुसार फिल्टर |
|
|
595
|
+
|
|
596
|
+
| मोड | विवरण |
|
|
597
|
+
|------|-------|
|
|
598
|
+
| `fp_sources` | कॉन्फ़िगरेशन और API कुंजी स्थिति के साथ सभी उपलब्ध डेटा स्रोतों की सूची |
|
|
599
|
+
| `fp_config` | सर्वर कॉन्फ़िगरेशन — वर्शन, लोड किए गए प्रदाता, तकनीक संख्या |
|
|
600
|
+
| `fp_signatures` | सिग्नेचर डेटाबेस सूची — JARM, बैनर, WAF, एप्लिकेशन सिग्नेचर |
|
|
601
|
+
|
|
602
|
+
</details>
|
|
603
|
+
|
|
604
|
+
---
|
|
605
|
+
|
|
606
|
+
### CLI उपयोग
|
|
607
|
+
|
|
608
|
+
```bash
|
|
609
|
+
# सभी उपलब्ध टूल और तकनीकों की सूची
|
|
610
|
+
npx fingerprint-mcp --list
|
|
611
|
+
|
|
612
|
+
# कोई भी टूल सीधे चलाएं
|
|
613
|
+
npx fingerprint-mcp --tool recon '{"url":"https://example.com","depth":"quick"}'
|
|
614
|
+
npx fingerprint-mcp --tool scan_tls '{"host":"example.com"}'
|
|
615
|
+
npx fingerprint-mcp --tool scan_ports '{"host":"10.0.1.50","ports":[22,80,443,3306,8080]}'
|
|
616
|
+
npx fingerprint-mcp --tool scan_dns '{"domain":"example.com"}'
|
|
617
|
+
npx fingerprint-mcp --tool scan_http '{"url":"https://example.com"}'
|
|
618
|
+
npx fingerprint-mcp --tool scan_waf '{"url":"https://example.com"}'
|
|
619
|
+
npx fingerprint-mcp --tool scan_services '{"host":"10.0.1.50","service":"redis"}'
|
|
620
|
+
npx fingerprint-mcp --tool enumerate '{"domain":"example.com"}'
|
|
621
|
+
npx fingerprint-mcp --tool analyze '{"type":"headers","data":"Server: nginx/1.24.0\nX-Powered-By: Express"}'
|
|
622
|
+
npx fingerprint-mcp --tool correlate '{"type":"honeypot","signals":{"jarm":"...","banner":"..."}}'
|
|
623
|
+
npx fingerprint-mcp --tool meta '{}'
|
|
624
|
+
|
|
625
|
+
# OSINT टूल (API कुंजी आवश्यक)
|
|
626
|
+
SHODAN_API_KEY=your-key npx fingerprint-mcp --tool osint '{"target":"203.0.113.42","type":"ip"}'
|
|
627
|
+
```
|
|
628
|
+
|
|
629
|
+
---
|
|
630
|
+
|
|
631
|
+
## डेटा स्रोत (21)
|
|
632
|
+
|
|
633
|
+
| स्रोत | प्रमाणीकरण | क्या प्रदान करता है |
|
|
634
|
+
|-------|-----------|-------------------|
|
|
635
|
+
| TCP प्रोबिंग | नहीं | पोर्ट स्कैनिंग, बैनर ग्रैबिंग, सर्विस डिटेक्शन |
|
|
636
|
+
| TLS/SSL विश्लेषण | नहीं | सर्टिफिकेट पार्सिंग, JARM फिंगरप्रिंटिंग, JA4X, सिफर एन्यूमरेशन, SNI परीक्षण |
|
|
637
|
+
| SSH प्रोबिंग | नहीं | प्रोटोकॉल वर्शन, एल्गोरिथम ऑडिट, सॉफ्टवेयर डिटेक्शन |
|
|
638
|
+
| HTTP विश्लेषण | नहीं | हेडर फिंगरप्रिंटिंग, फेविकॉन हैशिंग, कुकी विश्लेषण, मेथड एन्यूमरेशन, CORS |
|
|
639
|
+
| Web डिटेक्शन | नहीं | टेक्नोलॉजी डिटेक्शन, एनालिटिक्स, सोर्स मैप, WebSocket, GraphQL, SPA फ्रेमवर्क |
|
|
640
|
+
| पाथ खोज | नहीं | संवेदनशील फाइलें, git लीक, डीबग एंडपॉइंट, API वर्शन, robots.txt |
|
|
641
|
+
| DNS रिज़ॉल्यूशन | नहीं | रिकॉर्ड एन्यूमरेशन, ईमेल प्रमाणीकरण विश्लेषण, SaaS डिटेक्शन, सर्वर फिंगरप्रिंटिंग |
|
|
642
|
+
| WAF/CDN डिटेक्शन | नहीं | WAF पहचान, CDN डिटेक्शन, WAF फिंगरप्रिंटिंग |
|
|
643
|
+
| टाइमिंग विश्लेषण | नहीं | रिस्पॉन्स टाइमिंग बेसलाइन, क्लॉक स्क्यू डिटेक्शन |
|
|
644
|
+
| HTTP/2 और HTTP/3 | नहीं | HTTP/2 डिटेक्शन और फिंगरप्रिंटिंग, HTTP/3 Alt-Svc खोज |
|
|
645
|
+
| SMTP प्रोबिंग | नहीं | SMTP बैनर विश्लेषण, STARTTLS निरीक्षण |
|
|
646
|
+
| IoT/एम्बेडेड | नहीं | IoT डिवाइस डिटेक्शन, UPnP/SSDP खोज |
|
|
647
|
+
| एप्लिकेशन डिटेक्शन | नहीं | CMS, फ्रेमवर्क और ई-कॉमर्स प्लेटफॉर्म पहचान |
|
|
648
|
+
| सर्विस प्रोबिंग | नहीं | MySQL, PostgreSQL, Redis, FTP, VNC/RDP फिंगरप्रिंटिंग |
|
|
649
|
+
| इंफ्रास्ट्रक्चर डिटेक्शन | नहीं | क्लाउड प्रदाता, होस्टिंग प्रदाता, CDN पहचान |
|
|
650
|
+
| कोरिलेशन इंजन | नहीं | सिग्नल संगति, हनीपॉट डिटेक्शन, स्पूफिंग डिटेक्शन, टोपोलॉजी मैपिंग |
|
|
651
|
+
| पहचान इंजन | नहीं | हैश-आधारित पहचान, C2 डिटेक्शन, सिग्नेचर मैचिंग |
|
|
652
|
+
| [Shodan](https://www.shodan.io) | `SHODAN_API_KEY` | होस्ट इंटेलिजेंस — खुले पोर्ट, बैनर, कमज़ोरियां, OS डिटेक्शन |
|
|
653
|
+
| [Censys](https://censys.io) | `CENSYS_API_ID` | होस्ट डेटा — सर्विसेज, TLS सर्टिफिकेट, स्वायत्त प्रणाली जानकारी |
|
|
654
|
+
| [SecurityTrails](https://securitytrails.com) | `SECURITYTRAILS_API_KEY` | WAF ओरिजिन खोज, पैसिव DNS इतिहास, ऐतिहासिक रिकॉर्ड |
|
|
655
|
+
| [VirusTotal](https://www.virustotal.com) | `VIRUSTOTAL_API_KEY` | डोमेन/IP प्रतिष्ठा, डिटेक्शन परिणाम, DNS इतिहास, श्रेणियां |
|
|
656
|
+
|
|
657
|
+
---
|
|
658
|
+
|
|
659
|
+
## आर्किटेक्चर
|
|
660
|
+
|
|
661
|
+
```
|
|
662
|
+
src/
|
|
663
|
+
index.ts # CLI एंट्रीपॉइंट (--help, --list, --tool, stdio सर्वर)
|
|
664
|
+
protocol/
|
|
665
|
+
mcp-server.ts # MCP सर्वर सेटअप (stdio ट्रांसपोर्ट)
|
|
666
|
+
tools.ts # टूल रजिस्ट्री — सभी 13 कम्पोजिट टूल यहां पंजीकृत
|
|
667
|
+
types/
|
|
668
|
+
index.ts # साझा प्रकार (ToolDef, ToolContext, ToolResult)
|
|
669
|
+
utils/
|
|
670
|
+
rate-limiter.ts # प्रति-प्रदाता रेट लिमिटर
|
|
671
|
+
cache.ts # API रिस्पॉन्स के लिए TTL कैश
|
|
672
|
+
require-key.ts # API कुंजी सत्यापन सहायक
|
|
673
|
+
murmurhash3.ts # फेविकॉन हैशिंग के लिए MurmurHash3
|
|
674
|
+
composite/ # 13 कम्पोजिट टूल ऑर्केस्ट्रेटर
|
|
675
|
+
recon.ts # पूर्ण रिकन ऑर्केस्ट्रेटर (quick/standard/deep)
|
|
676
|
+
scan-ports.ts # पोर्ट स्कैनिंग कम्पोजिट
|
|
677
|
+
scan-tls.ts # TLS विश्लेषण कम्पोजिट
|
|
678
|
+
scan-dns.ts # DNS इंटेलिजेंस कम्पोजिट
|
|
679
|
+
scan-http.ts # HTTP फिंगरप्रिंटिंग कम्पोजिट
|
|
680
|
+
scan-paths.ts # पाथ डिस्कवरी कम्पोजिट
|
|
681
|
+
scan-waf.ts # WAF/CDN डिटेक्शन कम्पोजिट
|
|
682
|
+
scan-services.ts # सर्विस प्रोबिंग कम्पोजिट
|
|
683
|
+
analyze.ts # पैसिव विश्लेषण कम्पोजिट
|
|
684
|
+
correlate.ts # कोरिलेशन इंजन कम्पोजिट
|
|
685
|
+
enumerate.ts # दायरा विस्तार कम्पोजिट
|
|
686
|
+
osint.ts # OSINT एनरिचमेंट कम्पोजिट
|
|
687
|
+
meta.ts # सर्वर मेटा कम्पोजिट
|
|
688
|
+
helpers.ts # साझा कम्पोजिट सहायक
|
|
689
|
+
tcp/ # TCP प्रोबिंग तकनीक (3)
|
|
690
|
+
tls/ # TLS/SSL विश्लेषण तकनीक (8)
|
|
691
|
+
ssh/ # SSH प्रोबिंग तकनीक (3)
|
|
692
|
+
http/ # HTTP फिंगरप्रिंटिंग तकनीक (16)
|
|
693
|
+
web/ # वेब टेक्नोलॉजी डिटेक्शन तकनीक (9)
|
|
694
|
+
path/ # पाथ डिस्कवरी तकनीक (5)
|
|
695
|
+
dns/ # DNS इंटेलिजेंस तकनीक (7)
|
|
696
|
+
waf/ # WAF/CDN डिटेक्शन तकनीक (4)
|
|
697
|
+
timing/ # टाइमिंग विश्लेषण तकनीक (2)
|
|
698
|
+
h2/ # HTTP/2 और HTTP/3 तकनीक (3)
|
|
699
|
+
smtp/ # SMTP प्रोबिंग तकनीक (2)
|
|
700
|
+
iot/ # IoT/एम्बेडेड डिटेक्शन तकनीक (2)
|
|
701
|
+
app/ # एप्लिकेशन डिटेक्शन तकनीक (3)
|
|
702
|
+
service/ # सर्विस प्रोबिंग तकनीक (5)
|
|
703
|
+
infra/ # इंफ्रास्ट्रक्चर डिटेक्शन तकनीक (3)
|
|
704
|
+
correlation/ # कोरिलेशन इंजन (5)
|
|
705
|
+
identify/ # पहचान इंजन (3)
|
|
706
|
+
passive/ # पैसिव विश्लेषण (3)
|
|
707
|
+
osint/ # OSINT एनरिचमेंट तकनीक (6)
|
|
708
|
+
enum/ # एन्यूमरेशन तकनीक (8)
|
|
709
|
+
meta/ # मेटा टूल (3)
|
|
710
|
+
data/ # सिग्नेचर डेटाबेस और पैटर्न लाइब्रेरी
|
|
711
|
+
jarm-signatures.ts # ज्ञात JARM फिंगरप्रिंट (C2, सर्वर, CDN)
|
|
712
|
+
waf-signatures.ts # WAF डिटेक्शन सिग्नेचर
|
|
713
|
+
service-banners.ts # सर्विस बैनर पैटर्न
|
|
714
|
+
tech-patterns.ts # टेक्नोलॉजी डिटेक्शन पैटर्न
|
|
715
|
+
favicon-hashes.ts # ज्ञात फेविकॉन MurmurHash3 मान
|
|
716
|
+
c2-signatures.ts # C2 फ्रेमवर्क सिग्नेचर
|
|
717
|
+
... # 15+ सिग्नेचर/पैटर्न डेटाबेस
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
**डिज़ाइन निर्णय:**
|
|
721
|
+
|
|
722
|
+
- **13 कम्पोजिट टूल, 103 तकनीक** — एजेंट उच्च-स्तरीय टूल कॉल करता है (`recon`, `scan_tls`, `scan_http`)। प्रत्येक कम्पोजिट कई निम्न-स्तरीय तकनीकों को ऑर्केस्ट्रेट करता है और कोरिलेटेड परिणाम लौटाता है। यह ग्रैनुलैरिटी बनाए रखते हुए टूल-कॉल ओवरहेड कम करता है।
|
|
723
|
+
- **21 प्रदाता, 1 सर्वर** — प्रत्येक फिंगरप्रिंटिंग लेयर एक स्वतंत्र मॉड्यूल है। कम्पोजिट ऑर्केस्ट्रेटर संदर्भ और गहराई के आधार पर तकनीक चुनता है।
|
|
724
|
+
- **पहले सक्रिय, OSINT वैकल्पिक** — 80+ तकनीक शून्य API कुंजियों के साथ सीधे लक्ष्य को प्रोब करके काम करती हैं। OSINT प्रदाता (Shodan, Censys, VirusTotal, SecurityTrails) एनरिचमेंट जोड़ते हैं लेकिन कभी आवश्यक नहीं होते।
|
|
725
|
+
- **प्रति-प्रदाता रेट लिमिटर** — प्रत्येक प्रदाता का अपना `RateLimiter` इंस्टेंस है। सक्रिय प्रोबिंग डिटेक्शन से बचने के लिए रेट-लिमिटेड है; OSINT API उनके कोटा के अनुसार कैलिब्रेट किए जाते हैं।
|
|
726
|
+
- **TTL कैशिंग** — DNS रिकॉर्ड (10 मिनट), OSINT परिणाम (15 मिनट), CT लॉग (30 मिनट) बहु-टूल वर्कफ्लो के दौरान अनावश्यक लुकअप से बचने के लिए कैश किए जाते हैं।
|
|
727
|
+
- **सुंदर गिरावट** — अनुपस्थित API कुंजियां सर्वर को क्रैश नहीं करतीं। OSINT टूल वर्णनात्मक संदेश लौटाते हैं: "Shodan होस्ट लुकअप सक्षम करने के लिए SHODAN_API_KEY सेट करें।"
|
|
728
|
+
- **3 डिपेंडेंसी** — `@modelcontextprotocol/sdk`, `zod` और `cheerio`। सभी नेटवर्क I/O नेटिव `fetch()` और Node.js `net`/`tls`/`dns` मॉड्यूल के माध्यम से। कोई nmap नहीं, कोई बाहरी बाइनरी नहीं।
|
|
729
|
+
|
|
730
|
+
---
|
|
731
|
+
|
|
732
|
+
## सीमाएं
|
|
733
|
+
|
|
734
|
+
- OSINT टूल (Shodan, Censys, VirusTotal, SecurityTrails) अपनी संबंधित तकनीकों के लिए API कुंजी आवश्यक करते हैं
|
|
735
|
+
- Censys मुफ्त टियर 250 क्वेरी/माह तक सीमित
|
|
736
|
+
- VirusTotal मुफ्त टियर 500 क्वेरी/दिन तक सीमित
|
|
737
|
+
- पोर्ट स्कैनिंग TCP connect (SYN scan नहीं) उपयोग करती है — nmap से कम गोपनीय लेकिन root विशेषाधिकार की आवश्यकता नहीं
|
|
738
|
+
- JARM फिंगरप्रिंटिंग के लिए लक्ष्य तक सीधी TCP पहुंच आवश्यक (फायरवॉल द्वारा अवरुद्ध हो सकती है)
|
|
739
|
+
- UPnP/SSDP खोज केवल स्थानीय नेटवर्क पर काम करती है
|
|
740
|
+
- सर्विस प्रोबिंग (MySQL, PostgreSQL, Redis) कनेक्ट करती है लेकिन प्रमाणित नहीं करती
|
|
741
|
+
- सबडोमेन एन्यूमरेशन CT लॉग और पैसिव स्रोतों पर निर्भर करती है (ब्रूट-फोर्स नहीं)
|
|
742
|
+
- macOS / Linux पर परीक्षित (Windows पर परीक्षित नहीं)
|
|
743
|
+
|
|
744
|
+
---
|
|
745
|
+
|
|
746
|
+
## MCP सुरक्षा सूट का हिस्सा
|
|
747
|
+
|
|
748
|
+
| प्रोजेक्ट | डोमेन | टूल |
|
|
749
|
+
|-----------|--------|------|
|
|
750
|
+
| [hackbrowser-mcp](https://github.com/badchars/hackbrowser-mcp) | ब्राउज़र-आधारित सुरक्षा परीक्षण | 39 टूल, Firefox, इंजेक्शन परीक्षण |
|
|
751
|
+
| [cloud-audit-mcp](https://github.com/badchars/cloud-audit-mcp) | क्लाउड सुरक्षा (AWS/Azure/GCP) | 38 टूल, 60+ जांच |
|
|
752
|
+
| [github-security-mcp](https://github.com/badchars/github-security-mcp) | GitHub सुरक्षा स्थिति | 39 टूल, 45 जांच |
|
|
753
|
+
| [cve-mcp](https://github.com/badchars/cve-mcp) | कमज़ोरी इंटेलिजेंस | 23 टूल, 5 स्रोत |
|
|
754
|
+
| [osint-mcp-server](https://github.com/badchars/osint-mcp-server) | OSINT और रिकनेसान्स | 37 टूल, 12 स्रोत |
|
|
755
|
+
| [darknet-mcp-server](https://github.com/badchars/darknet-mcp-server) | डार्क वेब और थ्रेट इंटेलिजेंस | 66 टूल, 16 स्रोत |
|
|
756
|
+
| **fingerprint-mcp** | **सार्वभौमिक डिजिटल फिंगरप्रिंटिंग** | **13 टूल, 103 तकनीक, 21 प्रदाता** |
|
|
757
|
+
|
|
758
|
+
---
|
|
759
|
+
|
|
760
|
+
<p align="center">
|
|
761
|
+
<b>केवल अधिकृत सुरक्षा परीक्षण और मूल्यांकन के लिए।</b><br>
|
|
762
|
+
किसी भी लक्ष्य पर फिंगरप्रिंटिंग करने से पहले हमेशा सुनिश्चित करें कि आपके पास उचित प्राधिकरण है।
|
|
763
|
+
</p>
|
|
764
|
+
|
|
765
|
+
<p align="center">
|
|
766
|
+
<a href="LICENSE">AGPL-3.0 लाइसेंस</a> • Bun + TypeScript के साथ निर्मित
|
|
767
|
+
</p>
|