
STARTTLS stripping attacks का प्रॉक्सी PoC कार्यान्वयन

एक सामान्य TCP प्रॉक्सी कार्यान्वयन और ऑडिट टूल जो प्रोटोकॉल स्वतंत्र ssl/tls इंटरसेप्शन और SMTP, POP3, IMAP, FTP, NNTP, XMPP, ACAP और IRC पर STARTTLS स्ट्रिपिंग हमलों को करने के लिए है।
Python2!
//इस प्रोजेक्ट की मदद से कोई भेद्यता खोजी? मुझे एक पंक्ति छोड़ें!
SSLContext) < Python 3--key=server.pemपरिणाम:```python
[Vulnerable!] <class striptls.StripWithInvalidResponseCode at 0xffd3138c>
[Vulnerable!] <class striptls.StripWithTemporaryError at 0xffd4611c>
[ ] <class striptls.StripFromCapabilities at 0xffd316bc>
[Vulnerable!] <class striptls.StripWithError at 0xffd4614c>
[Vulnerable!] <class striptls.StripInboundTLS at 0x7f08319a6808>
[Vulnerable!] <class striptls.StripFromCapabilities at 0x7f08319a67a0>
[Vulnerable!] <class striptls.UntrustedIntercept at 0x7f08319a6870>
## उपयोग```
#> python2 -m pip install striptls
#> python2 -m striptls --help
(No content provided in the input chunk, so no translation is needed.)``` #> python -m striptls --help # from pip/setup.py #> python striptls --help # from source / root folder Usage: striptls.py [options]
example: striptls.py --listen 0.0.0.0:25 --remote mail.server.tld:25
Options: -h, --help show this help message and exit -q, --quiet be quiet [default: True] -l LISTEN, --listen=LISTEN listen ip:port [default: 0.0.0.0:<remote_port>] -r REMOTE, --remote=REMOTE remote target ip:port to forward sessions to -k KEY, --key=KEY SSL Certificate and Private key file to use, PEM format assumed [default: server.pem] -s, --generic-ssl-intercept dynamically intercept SSL/TLS -b BUFFER_SIZE, --bufsiz=BUFFER_SIZE -x VECTORS, --vectors=VECTORS Comma separated list of vectors. Use 'ALL' (default) to select all vectors, 'NONE' for tcp/ssl proxy mode. Available vectors: ACAP.StripFromCapabilities, ACAP.StripWithError, ACAP.UntrustedIntercept, FTP.StripFromCapabilities, FTP.StripWithError, FTP.UntrustedIntercept, GENERIC.Intercept, IMAP.ProtocolDowngradeToV2, IMAP.StripFromCapabilities, IMAP.StripWithError, IMAP.UntrustedIntercept, IRC.StripCAPWithNotRegistered, IRC.StripFromCapabilities, IRC.StripWithError, IRC.StripWithNotRegistered, IRC.StripWithSilentDrop, IRC.UntrustedIntercept, NNTP.StripFromCapabilities, NNTP.StripWithError, NNTP.UntrustedIntercept, POP3.StripFromCapabilities, POP3.StripWithError, POP3.UntrustedIntercept, SMTP.InboundStarttlsProxy, SMTP.InjectCommand, SMTP.ProtocolDowngradeStripExtendedMode, SMTP.StripFromCapabilities, SMTP.StripWithError, SMTP.StripWithInvalidResponseCode, SMTP.StripWithTemporaryError, SMTP.UntrustedIntercept, XMPP.StripFromCapabilities, XMPP.StripInboundTLS, XMPP.UntrustedIntercept [default: ALL]
## इंस्टॉल करें (वैकल्पिक)
pip से
#> pip install striptls
स्रोत से
#> setup.py install
## उदाहरण
inbound outbound
[inbound_peer]<------------->[listen:proxy]<------------->[outbound_peer/target]
smtp-client striptls remote/target
स्थानीय `smtp-client` -> `localhost:8825` (प्रॉक्सी) -> `mail.gmx.net:25`
### सामान्य SSL/TLS अवरोधन
`--generic-ssl-intercept` एक वैश्विक स्विच है जो सामान्य ssl/tls हैंडशेक का पता लगाने और सत्र रूपांतरण को सक्षम करता है। इसे किसी भी mangle/vector के साथ जोड़ा जा सकता है।
`GENERIC.Intercept` ssl/tls हैंडशेक डिटेक्ट और कन्वर्ट फीचर का एक mangle/vector कार्यान्वयन है।