[XDCTF-2017-Final] 总结

我男神@美男 全程带飞~,主要写一写感想和awd基本流程总结

1. 上来一般会有30min防御,先备份整站以及各种题。

Linux命令:[root@linux ~]# tar [-cxtzjvfpPN]文件与目录....

将整个/etc目录下的文件全部打包成为/tmp/etc.tar:

[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc   <==打包后,以gzip压缩

详情:http://blog.csdn.net/mpu/article/details/1637373

Mysql备份整站:

mysqldump -uroot  -ppassword database > database.sql

也可winscp连接,整站下载。

2. linux改密码:passwd(username)(user只能修改本用户)

mysql改密码:

mysqladmin -u用户名-p旧密码password新密码;

set password for root@localhost=password("123456");

win改密码:net user username newpass

注意:linux,mysql,后台等,都有可能有多个用户!!!注意爆破一下其他用户

Linux:

cat /etc/passwd可以查看所有用户的列表

cat /etc/group查看用户组

mysql:/config.inc.php

3. 批量布上waf,monitor,批量部署脚本:见./waf/1.py

有权限可执行linux命令部署:

find /var/www/html -type f -path "*.php" | xargs sed -i "s/ nrequire_once('\/tmp\/waf.php');\n/g"

或修改php配置文件:在php.ini中找到:

Automatically add files before or after any PHPdocument.

auto_prepend_file = waf.php路径;(未测试,或可用于留后门)

注:一般无权限查看系统日志(如有权限,可:journalctl -e或cat /etc/httpd/httpd.confaccess_log:记录了所有对Web服务器的访问活动error_log:错误日志ssl_request_log:ssl访问日志)

4. chattr +i /etc/profile(使目录不可写删),chmod 555

命令:find -type d /var/www/html | xargs chmod 555

(吐槽)   这次就遇到一个队把目录设成了555,应该是哈工大的大佬们,结果改之前拿下的shell也没法传不死马,最后被杀了。但权限一般不会这么大,否则一个iptables直接封了,比赛没法打。

5. 获取flag:自带getflag命令或执行

curl http://提交ip/flag(分析男神的两个poc脚本,如flag返回方式等)

6. 马仅仅不死还不够,考虑:写成内存马,驻进程不易被杀,并socket连接本机(复习socket编程):telnet xxx:0000,本地nc监听即可。

注意:藏好马,留好后门很重要!!注意收集猥琐藏马姿势!尽量写批量穿马脚本,第一时间上内存马!(文末大神文章中有他改进的不死马,基于内容和文件存在判断)

7. 时常netstat –ano看一下,自己服务器有没有被别人通过弱口令或爆破连接,可防止有双用户然而自己未发现导致被打。(本次被哈工大大佬们改服务器第二用户密码,吊打全场... )

8. Python Flask框架为单线程,一建立连接,check时就会down掉(so,。。。然而解决方法未知,待探究),男神审计一眼发现存在ssrf...然而超出目前我的能力范围,待学习,修补只需去掉相关函数或给相关变量初始化为安全值,不接受post或get过来的参数。

查看Flask实时日志文件命令:(待补充)




附上王一航大佬总结,干货满满!

www.jianshu.com/p/35af80b97ee6

你可能感兴趣的:([XDCTF-2017-Final] 总结)