攻防世界web(二)进阶(一)

1.Cat

这里做了好久都没有头绪,一开始测完网页的功能之后,就明白了网页是ping(连接ip),于是就用 127.0.0.1&&ls 去尝试查询网页的目录,结果发现被屏蔽了,这里又尝试了127.0.0.1|ls 和 127.0.0.1&&dir 都发现被过滤掉了,于是这里查看别人的writeup,
明白了毛线,说是因为字符超过0x7F的ASCII都会引发Django的报错。在url中输入?url=%88,可以得到报错页面:
攻防世界web(二)进阶(一)_第1张图片
然后说是用 Django 报错调用栈中的信息,在settings项目中可以看到数据库相关信息
,然后提交@/opt/api/database.sqlite3,一脸懵逼,查找字符串发现了flag:

攻防世界web(二)进阶(一)_第2张图片

2.ics-06

打开这道题发现了功能模块中只剩下了一个报表中心可以使用,进去之后,一脸懵逼说是送分题,但是不知道id=多少,于是采用burpsuite爆破,在id=2333的时候,不一样,登入之后得到flag
攻防世界web(二)进阶(一)_第3张图片

3、NewsCenter

将页面将用burpsuite抓取,然后另存为txt文件,再用sqlmap扫描,

sqlmap.py -r xxx.txt --dbs

发现了一个news
攻防世界web(二)进阶(一)_第4张图片
之后再

sqlmap.py -r xxx.txt -D news --dump

得到flag:
攻防世界web(二)进阶(一)_第5张图片

4、mfw

‘参考知识点:git代码泄露’
在这里插入图片描述
看不懂这个提示还是误导,之后看了别人的writeup才会的。
才知道原来存在.git源代码泄露,用git下载下来之后,
攻防世界web(二)进阶(一)_第6张图片
然后插入代码:

$file = "templates/" . $page . ".php";

assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");

于是可以构造url为page=abc’) or system(“cat templates/flag.php”);//
访问得到flag:
攻防世界web(二)进阶(一)_第7张图片

你可能感兴趣的:(攻防世界,web,writeup)