
Apache Tomcat CVE-2022-29885
Das Tool dient ausschließlich der Sicherheitsforschung. Es ist verboten, das Tool für illegale Angriffe zu verwenden. Der Benutzer ist für die Konsequenzen verantwortlich.
工具仅用于安全研究以及内部自查,禁止使用工具发起非法攻击,造成的后果使用者负责
Apache Tomcat DoS (CVE-2022-29885) Exploit
Denial of Service im EncryptInterceptor (Tomcat Cluster)
Das Zielsystem muss den Cluster Nio Receiver starten. Das Senden eines speziellen TCP-Pakets führt zu einem Denial of Service auf dem Ziel. Ob EncryptInterceptor verwendet wird oder nicht, besteht die Möglichkeit einer Denial-of-Service-Schwachstelle.
Bedingung: Aktivieren Sie die Tomcat-Cluster-Funktion und verwenden Sie NioReceiver für die Kommunikation.
Jede Version von Tomcat ist betroffen. Die einzige Lösung ist die Verwendung eines vertrauenswürdigen Netzwerks.
Unsichere Konfiguration: Kein EncryptInterceptor verwendet
server.xml
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="0.0.0.0"
port="5000"
selectorTimeout="100"
maxThreads="6"/>
</Channel>
</Cluster>
exploit: ./dos -h target_ip -p target_nio_port

Bei unsicherer Konfiguration können Sie auch den Safe-Config-Exploit verwenden.
Aber bei sicherer Konfiguration können Sie nur den Safe-Config-Exploit verwenden.
Sichere Konfiguration: EncryptInterceptor verwendet
server.xml
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="0.0.0.0"
port="5000"
selectorTimeout="100"
maxThreads="6"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.EncryptInterceptor"
encryptionAlgorithm="AES/CBC/PKCS5Padding"
encryptionKey="ANY_KEY(LENGTH:32)"/>
</Channel>
</Cluster>
exploit: ./dos -h target_ip -p target_nio_port -s

https://lists.apache.org/thread/2b4qmhbqcyvcq7dyfpjyx54c03x65vhcv