SQL注入以及一些web题

本文详细介绍了堆叠注入原理及其在SQL中的应用,包括设置sql_mode和操作符重置方法。同时探讨了SQL注入中过滤空格的策略,以及如何通过破解默认口令进行网络安全挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、 堆叠注入(SQL)

例题 

方法一(设置 sql_mode=PIPES_AS_CONCAT来转换操作符)

方法二 (操作符重置法)

二、sql注入中过滤空格

三、密码口令----默认口令(ctfhub)

四、 [极客大挑战 2019]Havefun 1

 五、[极客大挑战 2019]Http 1

 六、[GXYCTF2019]Ping Ping Ping 1


一、 堆叠注入(SQL)

堆叠注入原理:
堆叠查询可以执行多条语句,多条语句之间以分号隔开。堆叠注入就是利用在一条查询语句结束之后,在语句末尾加入分号之后再插入恶意的SQL语句,就可以达到攻击者的意图。

基于mysqli数据对象的堆叠注入:需要执行多条SQL语句,就需要使用mysqli_multi_query()方法,mysqli_multi_query()可以执行多条SQL语句,如果后端代码使用这个方法去执行SQL语句,我们就可以利用堆叠注入获取后台数据库的信息。 

例题 

1.进入页面,发现输入非零会有回显,输入零和字母就没有回显 2.此题使用堆叠注入,输入1;show databases;显示所有的库

3.输入1;show tables;查所有的表

4.输入1;show columns from Flag查flag表的字段,发现报错

5.猜测过滤了一些内容,这里有两种方法

方法一(设置 sql_mode=PIPES_AS_CONCAT来转换操作符

构建payload:

1;set sql_mode=PIPES_AS_CONCAT;select 1

注:这里的逻辑是先把||转换为连接操作符,注意分号隔断了前面的命令,所以要再次添加select来进行查询,这里把1换成其他非零数字也一样会回显flag

方法二 (操作符重置法)

已知后端语句是select 输入内容 || flag from Flag,输入*,1就相当于构造了select *,1 || flag from Flag,这条语句执行起来相当于select *, 1 from Flag

二、sql注入中过滤空格

1.判断列数

2.判断显错位

3.爆数据库

4.爆表名

5.爆字段名

6.爆数据,发现只有一半,想到使用substring()函数

7. 发现substring()函数被过滤,使用mid函数,爆出后一半flag

注意:mid最大回显长度为20个字符

三、密码口令----默认口令(ctfhub)

1.打开页面,发现存在验证码,与之前弱口令不一样,不能用抓包,根据提示,上网找EYOU邮件网关

2.发现有默认的信息,一个一个试

3.最后试出flag

知识点

常见网络安全设备弱口令(默认口令):

设备    默认账号    默认密码
深信服产品    sangfor    sangfor sangfor@2018 sangfor@2019
深信服科技 AD        dlanrecover
深信服负载均衡 AD 3.6    admin    admin
深信服WAC ( WNS V2.6)    admin    admin
深信服VPN    Admin    Admin
深信服ipsec-VPN (SSL 5.5)    Admin    Admin
深信服AC6.0    admin    admin
SANGFOR防火墙    admin    sangfor
深信服AF(NGAF V2.2)    admin    sangfor
深信服NGAF下一代应用防火墙(NGAF V4.3)    admin    admin
深信服AD3.9    admin    admin
深信服上网行为管理设备数据中心    Admin    密码为空
SANGFOR_AD_v5.1    admin    admin
网御漏洞扫描系统    leadsec    leadsec
天阗入侵检测与管理系统 V7.0    Admin    venus70
Audit    venus70
adm    venus70
天阗入侵检测与管理系统 V6.0    Admin    venus60
Audit    venus60
adm    venus60
网御WAF集中控制中心(V3.0R5.0)    admin    leadsec.waf
audit    leadsec.waf
adm    leadsec.waf
联想网御    administrator    administrator
网御事件服务器    admin    admin123
联想网御防火墙PowerV    administrator    administrator
联想网御入侵检测系统    lenovo    default
网络卫士入侵检测系统    admin    talent
网御入侵检测系统V3.2.72.0    adm    leadsec32
admin    leadsec32
联想网御入侵检测系统IDS    root    111111
admin    admin123
科来网络回溯分析系统    csadmin    colasoft
中控考勤机web3.0    administrator    123456
H3C iMC    admin    admin
H3C SecPath系列    admin    admin
H3C S5120-SI    test    123
H3C智能管理中心    admin    admin
H3C ER3100    admin    adminer3100
H3C ER3200    admin    adminer3200
H3C ER3260    admin    adminer3260
H3C    admin    adminer
admin    admin
admin    h3capadmin
h3c    h3c
360天擎    admin    admin
网神防火墙    firewall    firewall
天融信防火墙NGFW4000    superman    talent
黑盾防火墙    admin    admin
rule    abc123
audit    abc123
华为防火墙    telnetuser    telnetpwd
ftpuser    ftppwd
方正防火墙    admin    admin
飞塔防火墙    admin    密码为空
Juniper_SSG__5防火墙    netscreen    netscreen
中新金盾硬件防火墙    admin    123
kill防火墙(冠群金辰)    admin    sys123
天清汉马USG防火墙    admin    venus.fw
Audit    venus.audit
useradmin    venus.user
阿姆瑞特防火墙    admin    manager
山石网科    hillstone    hillstone
绿盟安全审计系统    weboper    weboper
webaudit    webaudit
conadmin    conadmin
admin    admin
shell    shell
绿盟产品        nsfocus123
TopAudit日志审计系统    superman    talent
LogBase日志管理综合审计系统    admin    safetybase
网神SecFox运维安全管理与审计系统    admin    !1fw@2soc#3vpn
天融信数据库审计系统    superman    telent
Hillstone安全审计平台    hillstone    hillstone
网康日志中心    ns25000    ns25000
网络安全审计系统(中科新业)    admin    123456
天玥网络安全审计系统    Admin    cyberaudit
明御WEB应用防火墙    admin    admin
admin    adminadmin
明御攻防实验室平台    root    123456
明御安全网关    admin    adminadmin
明御运维审计与册风险控制系统    admin    1q2w3e
system    1q2w3e4r
auditor    1q2w3e4r
operator    1q2w3e4r
明御网站卫士    sysmanager    sysmanager888
亿邮邮件网关    eyouuser    eyou_admin
eyougw    admin@(eyou)
admin    +-ccccc
admin    cyouadmin
Websense邮件安全网关    administrator    admin
梭子鱼邮件存储网关    admin    admin

四、 [极客大挑战 2019]Havefun 1

1.查看源代码  翻译源代码可得用cat 传参,如果cat=dog则会回显'Syc{cat_cat_cat_cat}'

2.传参之后得到flag

 五、[极客大挑战 2019]Http 1

1.查看源代码,发现有php文件

2.访问这个文件,页面显示它不是来自这个网站,于是想到web中遇到的修改请求头referer,于是使用抓包

3.使用bp抓包查看,添加referer,发现提示说使用 "Syclover" browser

4.通过报错可得,需要添加XFF请求头,在本地访问

5.得到flag

 六、[GXYCTF2019]Ping Ping Ping 1

1.页面显示/?ip= 应该是一个传参的提示,结合题目的ping,尝试?ip=127.0.0.1

2.发现是linux命令,于是输入; ls 显示文件

3.发现flag文件,用cat查看文件

4.发现报错了,猜测是过滤了一些内容

补充:

发现存在过滤 空格

想办法绕过一下

1.${IFS}

2.$IFS$1

3.${IFS

4.%20

5.<和<>重定向符替换

6.%09替换

注:Linux下有一个特殊的环境变量叫做IFS,叫做内部字段分隔符(internal field separator)。IFS环境变量定义了bash shell用户字段分隔符的一系列字符。默认情况下,bash shell会将下面的字符当做字段分隔符:空格、制表符、换行符。

注2:cat大部分情况下会被过滤,可以尝试tac和其他过滤方法

 

5.发现flag也被过滤了,于是查看另一个文件,有很多东西都被过滤了

6.绕过所有过滤的内容,查看源代码得到flag

 方法一

构造/?ip=127.0.0.1;b=ag;a=fl;cat$IFS$1$a$b.php  即可获取flag

          注:此处将变量ab的位置互换是为了绕过字符串匹配

方法二

构造/?ip=127.0.0.1;echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh

           注:sh是linux中运行shell的命令,bash相当于sh的升级版,sh∈bash

方法三

构造 /?ip=127.0.0.1;cat$IFS$9`ls`

          注:内联,就是将反引号内命令的输出作为输入执行

          注:``在linux中使用反引号包围意为将内容当做命令执行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值