前言
HW初级的主要任务就是看监控(流量) 这个时候就需要我们 了解各种漏洞流量数据包的信息
还有就是我们守护的是内网环境 所以很多的攻击都是 sql注入 和 webshell上传 (我们不管对面是怎么拿到网站的最高权限的 我们是需要指出它是什么攻击 利用了什么工具)
1、wireshark的基本使用
这些展示的是什么数据
Frame :帧信息 因为http是网络层 网络层的传输就是帧
Ethernet 以太网模式 主要展示的是原mac地址和目标的mac
这样是不是就知道攻击者的 ip 了呀 但这个是代理ip 不是真实的ip 可以理解为sqlmap会为真实者搞一个随机的ip 并且我们知道攻击者在同一个网段 因为内网下 185 是访问不到的 所以一眼就知道185要么是网关 要么就是个假ip
最后一个每个首字母合起来就是http
请求数据包啊就是
2、sqlmap注入时的流量特征
用的靶场是pikachu
--data是post提交的内容 -u是目标网站
找到注入点
第一特点就 流量走的很快
这边提示注入成功了
这些都是sql注入的类型模式
并且可以明显的看出是post类型的注入
那如果攻击者不用这个ua头
当sqlmap不使用特点的ua头
不使用sqlmap ua头的命令是 --random-agent
这边为了验证上边的猜想我们 设置一个随机的ua头 和代理(攻击者可以要攻击内网的时候会设置一个假的内网地址来迷惑我们这些猴子)
先清一下缓存 基本用法
这次我们试一下get注入和post有什么区别
有个知识点就是 工具为什么开代理 : 1、为了隐藏自己 (这里这个sqlmap就是这个)2、为了工具的抓包本地调试 3、内网勾出
清除一下wireshark重新搞一下
开始注入
发现get注入的特点也很明显就是 请求头很长啊
ua头变了怎么识别啊 ? 1、工具的速度是很快的 2、这个ua头很假啊 看看正常的ua
他这个win连你妹的编号都没有啊
总结:
1、先看sqlmap有没有在ua头出现 sqlmap伪造的ua头其实是很假
2、非常规流量 :同一个窗口 同一长度的流量出现多次
3、非常规字符 select union
4、get请求头很长 post的内容很特殊
了解一下sql注入的类型
bool型注入的流量特征
这个就是 b 什么是布尔型 ? 布尔就是true和flase 就是利用回显正确和错误进行猜字段(数据库名 表名 列名)
1 and substr((select password from admin where id=1),limit 0,1,1)
substr 就是可以查询数据库的字段 一个字母一个字母的查询 limit 0,1 0是索引表示第一页 后边的 1 表示第一行 最后的 1 表示一个字母
怎么找出对方正在干的进度 : bool就是找对错 既然这样我们就根据长度进行找
1388是响应时正确的显示包 我们就找1388前的
看一下370
正在测试还没有开始爆破 继续向下找
看了一会这个是爆破的找的很快没啥规律加入是 470
筛选 :http && frame.len == 470
所以这个bool型的特点 :
1、会有 and 123=123 或 and 223=299 这样的判断正错回显的语句
2、很明显的 substr 等语句
error型
通过报错回显的方法判断注入的准确性
发现是在爆破数据库 GTTD_SUBSET 通过拼接恶意构造的字符串,触发函数执行以探测数据库信息
MID是截取字符串
上边这个语句是在 爆破这个scheme_name表有多少个字段
怎么分析呢
找OK 看报错带出来的数据
缺点就是每次只能带出一条数据 并且固定长度为 543 596
识别 请求头有明显的 error_based_injection
union 联合查询
现在sqlmap的语句不像之前那么单一一看就看出来
id=1 UNION ALL SELECT NULL,CONCAT(0x71786b6a71,0x6f48516a4d5573666e654c6559775242444467706f766f7a6e70726b71575650426f5a7858764a64,0x716b626a71),NULL
//现在是一下看不懂了已经
然后再随便复制一句看看他在干什么
一看是在爆破库 上边的就是信息
s : 堆叠注入
什么是堆叠就是 select username from admin;selectpasswd from admin;
就是使用 ; 进行输出
以上就是sql注入的特征