由Three Hit聊聊二次注入

访客6年前黑客工具687

之前参与“强网杯”,学到了不少姿态,其间的web题three hit形象深入,考的是二次注入的问题,这儿对二次注入测验做一个小结。
0×01什么是二次注入?
所谓二次注入是指已存储(数据库、文件)的用户输入被读取后再次进入到 SQL 查询句子中导致的注入。
二次注入是sql注入的一种,可是比一般sql注入运用愈加困难,运用门槛更高。一般注入数据直接进入到 SQL 查询中,而二次注入则是输入数据经处理后存储,取出后,再次进入到 SQL 查询。
0×02二次注入的原理
二次注入的原理,在之一次进行数据库刺进数据的时分,仅仅只是运用了 addslashes 或者是凭借 get_magic_quotes_gpc 对其间的特别字符进行了转义,在写入数据库的时分仍是保留了本来的数据,可是数据自身仍是脏数据。
在将数据存入到了数据库中之后,开发者就以为数据是可信的。鄙人一次进行需求进行查询的时分,直接从数据库中取出了脏数据,没有进行进一步的查验和处理,这样就会形成SQL的二次注入。比如在之一次刺进数据的时分,数据中带有单引号,直接刺进到了数据库中;然后鄙人一次运用中在凑集的过程中,就形成了二次注入。

0×03二次注入的实例——SQLIlab lesson-24
学习SQL注入,必定要刷SQLIlab,这儿以SQLIlab lesson-24为例,也是调查的二次注入的点。翻开标题

这题正常的流程是首要注册一个账号,然后登陆进去会让你修正新的暗码:

假如直接测验在登陆处测验SQL注入,payload: admin’# 发现失利:

看一下源代码:

登陆处的username和password都通过了mysql_real_escape_string函数的转义,直接履行SQL句子会转义’,所以该处无法形成SQL注入。
Ok,此刻咱们注册一个test’#的账号:

注册用户的时分用了mysql_escape_string过滤参数:

可是数据库中仍是刺进了问题数据test’#

也就是说通过mysql_escape_string转义的数据存入数据库后被复原,这儿做了一个测验:

回到标题,此刻,test用户的本来暗码为test,咱们以test’#用户登陆,再进行暗码修正

咱们无需填写current password即可修正test用户的暗码:

咱们再看一下test用户的暗码:

Ok,咱们看一下源代码:  

Username直接从数据库中取出,没有通过转义处理。在更新用户暗码的时分其实履行了下面的指令:
“UPDATEusers SET PASSWORD=’22′ where username=’test’#‘ and password=’$curr_pass’”;

[1] [2]  黑客接单网

相关文章

从php内核视点剖析php弱类型

在CTF竞赛中PHP弱类型的特性常常被用上,但咱们往往知其然不知其所以然,终究为什么PHP是弱类型呢?很少人深究。在这次源码剖析的过程中我收成很大,第一次学会了怎么深化了解一个问题,尽管花费了我许多时...

手机用户是个骗子,说什么找黑客可以要回被骗

Spring是一个Java/Java此时Spring Cloud Config 1.4.0 to 1.4.53、在Windows 7, Windows Server 2008, and Windows...

建立dvwa环境学习从MySql注入到GetShell

一转眼从刚开端看关于安全的根底书本到现在现已十个月的时刻了,对浸透测验的爱好也不断的添加,由于刚开端作业的需求,只来得及看一些常见缝隙的基本原理就开端跟从老师傅开端浸透测验的作业。现在还记得第一次自己...

个人身份信息查询系统,黑客的联系方式呢,非你莫属超级黑客找

$html.= 'Fullname '; b374k shell支撑打包功用,这个功用能够将你需求的功用模块集成到单个php文件里。 0ea5d0d826854cdbf955da3311ed6934...

qq前线网,找黑客盗手游,找黑客的网站大全

我现已在http://extractdata.club/上创立了一个关于这个进犯的依据,该网站会测验衔接到Redis、Memcached和Elasticsearch,这些服务都运转在本机默许的端口上。...

黑客接单团队,谁黑客的联系方式,找黑客做事犯法吗

this.helpers = callbacks.getHelpers();vim /etc/httpd/conf/httpd.conf #增加如下 挑选答案(多选)我打个比方10、baidu...