【less-24】基于SQLI的二次注入

简介: 【less-24】基于SQLI的二次注入

实验目的

通过本实验理解SQL注入中二次注入漏洞引起的原因,如何利用漏洞进行二次注入。

实验环境

渗透平台:Kali

目标网站:SQLI平台

实验原理

二次排序注入也成为存储型的注入,就是将可能导致sql注入的字符先存入到数据库中,当再次调用这个恶意构造的字符时,就可以触发sql注入。

二次排序注入思路:

(1)黑客通过构造数据的形式,在浏览器或者其他软件中提交HTTP数据报文请求到服务端进行处理,提交的数据报文请求中可能包含了黑客构造的SQL语句或者命令。


(2)服务端应用程序会将黑客提交的数据信息进行存储,通常是保存在数据库中,保存的数据信息的主要作用是为应用程序执行其他功能提供原始输入数据并对客户端请求做出响应。


(3)黑客向服务端发送第二个与第一次不相同的请求数据信息。


(4)服务端接收到黑客提交的第二个请求信息后,为了处理该请求,服务端会查询数据库中已经存储的数据信息并处理,从而导致黑客在第一次请求中构造的SQL语句或者命令在服务端环境中执行。


(5)服务端返回执行的处理结果数据信息,黑客可以通过返回的结果数据信息判断二次注入漏洞利用是否成功。

源码中的漏洞


此例子中我们的步骤是注册一个admin’#的账号,接下来登录该帐号后进行修改密码。此时修改的就是admin的密码。


Sql语句变为UPDATE users SETpasswd=“New_Pass” WHERE username =’ admin’ # ’ AND password=’ ,也就是执行了UPDATE users SETpasswd=“New_Pass” WHERE username =’ admin’

(1)初始数据库为

注册admin’#账号(密码为123456)

如果此时查看后台数据库,此时的数据库中出现了admin’#的用户,同时admin的密码为111 登录admin’#,并修改密码

可以看到admin的密码已经修改为lcamry

实验步骤

第一步 在kali平台上使用Firefox访问SQLI的less-24实验

网站URL:

http://【靶机IP】/Less-24


第二步 注册一个新账号

点击登录框下方的“New User click here?”链接:


新注册账号名为admin’#密码为123456

第三步 以账号admin’#密码123456登录后修改密码

将密码由原来的123456修改为test


显示密码修改成功。


第四步 以账号admin密码test登录成功



思考与总结

通过本次实验,成功实现了利用源码中存在的二次注入漏洞,不使用admin的正确密码来绕过口令验证登录。


因此在编写代码时一定加强各种web漏洞的检测与防范,保证Web体系的安全。



相关文章
|
消息中间件 存储 Kafka
【Kafka】Kafka 架构设计分析
【4月更文挑战第5天】【Kafka】kafka 架构设计分析
|
SQL 网络安全 数据安全/隐私保护
[网络安全]sqli-labs Less-24 解题详析
[网络安全]sqli-labs Less-24 解题详析
209 0
|
11月前
|
数据采集 数据可视化 数据挖掘
数据驱动决策:BI工具在数据分析和业务洞察中的应用
【10月更文挑战第28天】在信息爆炸的时代,数据成为企业决策的重要依据。本文综述了商业智能(BI)工具在数据分析和业务洞察中的应用,介绍了数据整合、清洗、可视化及报告生成等功能,并结合实际案例探讨了其价值。BI工具如Tableau、Power BI、QlikView等,通过高效的数据处理和分析,助力企业提升竞争力。
221 5
|
算法 网络性能优化 调度
基于De-Jitter Buffer算法的无线网络业务调度matlab仿真,对比RR调度算法
1. **功能描述**: 提出了一个去抖动缓冲区感知调度器,结合用户终端的缓冲状态减少服务中断。该算法通过动态调整数据包发送速率以优化网络延迟和吞吐量。 2. **测试结果**: 使用MATLAB 2022a进行了仿真测试,结果显示De-Jitter Buffer算法在网络拥塞时比RR调度算法更能有效利用资源,减少延迟,并能根据网络状态动态调整发送速率。 3. **核心程序**: MATLAB代码实现了调度逻辑,包括排序、流量更新、超时和中断处理等功能。 仿真结果和算法原理验证了De-Jitter Buffer算法在无线网络调度中的优势。
|
存储 安全 Linux
CTFHuB靶场命令执行题型过关总结
本篇博文是对自己学习rce漏洞后,因为没有进行实战练习,仅仅停留在概念上,因此做了一次靶场实战练习,来帮助自己熟悉rce漏洞的利用类型以及利用方法,写下这篇文章对此做个总结..其实关于这个练习已经过去了很久了,但我还是要那出来进行一次复习吧,对与命令执行相关的一些操作,对自己在漏洞挖掘方面能有更多的帮助,通过这次练习也对自己关于代码审计或是关于linux命令的常见命令的同意替换有了更多的了解.
|
Java 关系型数据库 数据库连接
SpringBoot(二)【整合第三方技术】
SpringBoot(二)【整合第三方技术】
|
安全 网络安全
[网络安全]upload-labs Pass-14 解题详析
[网络安全]upload-labs Pass-14 解题详析
339 0
|
安全 网络安全 数据安全/隐私保护
[网络安全]sqli-labs Less-17 解题详析
[网络安全]sqli-labs Less-17 解题详析
182 0
|
SQL 安全 网络安全
网络安全]sqli-labs Less-8 解题详析
网络安全]sqli-labs Less-8 解题详析
287 0
|
Cloud Native 关系型数据库 分布式数据库
阿里云PolarDB自研数据库详细介绍
阿里云PolarDB数据库是阿里巴巴自研的关系型分布式云原生数据库,PolarDB兼容三种数据库引擎:MySQL、PostgreSQL、Oracle(语法兼容),目前提供云原生数据库PolarDB MySQL版、云原生数据库PolarDB PostgreSQL版和云原生数据库PolarDB分布式版,阿里云百科分享阿里云PolarDB数据库详细介绍
600 0