bwapp

学习学习

Posted by lll-yz on March 30, 2021

bwapp

bwapp简介

buggy web Application 这是一个集成了各种常见漏洞和最新漏洞的开源Web应用程序,目的是帮助网络安全爱好者、开发人员和学生发现并防止网络漏洞。包含了超过100种漏洞,涵盖了所有主要的已知Web漏洞,包括OWASP Top10安全风险,最重要的是已经包含了OpenSSL和ShellShock漏洞。

bwapp安装

我这里使用的是docker安装的,首先要安装docker,这里我有就不说了。(想看可以看这里–>here)

然后开始安装:(以下都是root权限)

docker search bwapp

cFJGHU.png

选用star最多的仓库安装:

docker pull raesene/bwapp

cFJrDK.png

查看拉取的镜像:

docker images

cFdX24.png

运行看看:

docker run -dt --name bWapp -p 8000:80 --rm raesene/bwapp

查看运行页面:(访问8000端口)

发现报错:Connection failed: Unknown database 'bWAPP',访问install.php页面下载数据库。

cFwad0.png

点击安装即可:

cFwcLR.png

成功,重新访问页面:

cFwjFf.md.png

默认账号密码为:bee/bug。

好了,可以开始愉快的玩耍了。

HTML Injection - Reflected (GET)

low

首先当然是low级别练练手了。

先来个<script>alert(1);</script>试试水,成功。

cApbaF.png

在来个<a href='https://www.baidu.com'>here</a>看看:

cA97QI.png

成功,注入链接,点击即可跳转到我们指定的目标页。

medium

再次尝试我们之前的注入<script>alert(1);</script>,发现没有成功,回应返回我们的注入内容:

cAC7h4.png

推测是有字符被编译为实体,看看源码:

可以看到只有<>被转换为实体了,但是后面用了urldecode()函数解码,所以我们可以把被查找转义的<>先url编码然后再输入:

%3cscript%3ealert(1);%3c/script%3e

成功。

high

同样<script>alert(1);</script>先行,还是原样输出,应该还是被转义了,看源码:

发现这里用了htmlspecialchars()函数把特殊字符进行了转义。无解欸。

HTML Injection - Reflected (POST)

low

与上一关相同,只是改为了POST传输。

<script>alert(1);</script>
<a href='https://www.baidu.com'>here</a>

medium

%3cscript%3ealert(1);%3c/script%3e

high

无解。

HTML Injection - Reflected (URL)

low

首先尝试在url上直接构造攻击:?a=<script>alert(1);</script>

由回显可以知道<>已被url编码,所以用burp抓包修改: