第17天:信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等

第十七天

本课意义

1.CMS识别到后期漏洞利用和代码审计
2.开发框架识别到后期漏洞利用和代码审计
3.开发组件识别到后期漏洞利用和代码审计

一、CMS指纹识别-不出网程序识别

1.概念

CMS指纹识别一般能识别到的都是以PHP语言开发的网页为主,其他语言开发的网页识别难度大

识别的意义就是向着对应目标使用对应的工具进行攻击

1.后端:

CMS:一般PHP开发居多源码程序(利用源码程序名去搜漏洞情况,源码去下载进行后期的代码审计)

2.前端:

JS框架(爬取更多的JS从里面筛选URL或敏感泄漏KEY等) 也是可以通过对JS代码逻辑进行代码审计

3.组件:

java居多,常见有过安全漏洞组件(shiro solr log4j sprintboot等)

4.框架:

php java python都有相对应的漏洞


2.Web架构:

1.最简单最入门的开发模型(功能代码全部手写)

最容易出现漏洞,程序员水平不一,没有第三方或团队的检测,单纯的自己写

2.结合开发框架的开发模型(以框架为核心实现功能)

第三方或团队的开发的封装代码框架,一般内置的过滤机制(框架漏洞)

3.结合开发框架外加组件模型(以框架为核心,组件为辅实现功能)

第三方或团队的开发的封装代码框架,一般内置的过滤机制(框架和组件漏洞)

CMS识别到后期漏洞利用和代码审计


二、开发框架识别-PHP&Python&Java

  1. **框架:**简单代码的一个整合库,如果使用框架就只需要学习使用框架调用即可
  2. 例子:文件上传功能是需要很多代码来实现的,框架把这个代码进行封封装,调用即可
  3. **影响:**如果采用框架开发,代码的安全 性是取决于框架的过滤机制
  4. 组件:第三方的功能模块(日志记录,数据监控,数据转换等)

开发框架识别到后期漏洞利用和代码审计


三、开发组件识别-Java常见安全漏洞组件

52类110个主流Java组件和框架介绍:

https://blog.csdn.net/agonie201218/article/details/125300729

开发组件识别到后期漏洞利用和代码审计


四、环境复现

1.指纹识别-本地工具-GotoScan(内网)

1进入https://github.com/newbe3three/gotoscan下载程序
2.下载完成后进入CMD执行程序,根据项目说明输入参数
3.对目标进行探测,仅限内网

2.Python-开发框架-Django&Flask

1.Django
1.使用FOFA寻找使用Django框架搭建的网站
2.使用识别插件进行查看
3.在Set-Cookie中包含csrftoken字段来判断是否使用了Django搭建的网站

2.Flask
1.使用FOFA寻找使用Flask框架搭建的网站
2.使用识别插件进行查看
3...在ETag中包含flask字段来判断是否使用了Flask搭建的网站,其他字段也有可能包含有flask字段,可以辅助判断

3.PHP-开发框架-ThinkPHP&Laravel&Yii

1.ThinkPHP
1.使用鹰图寻找使用ThinkPHP框架搭建的网站
2.使用识别插件进行查看
3.查看返回包是否存在X-Powered-By: ThinkPHP字段进行判断

2.Laravel
1.使用FOFA寻找使用Laravel框架搭建的网站
2.使用识别插件进行查看
3.查看返回包是否存在Set-Cookie.XSRF以及Set-Cookie.laravel_session中特征的格式

3.Yii
1.使用FOFA寻找使用Yii框架搭建的网站
2.使用识别插件进行查看
3.查看返回包是否存在Set-Cookie.YII_CSRF以及Set-Cookie:_csrf-frontend特征中的格式

4.Java-框架组件-FastJson&Shiro&Solr&Spring

1.Fastjson/Jackson

在提交JSON数据包中修改测试:

-Fastjson组件会把01解析成1

-Jackson组件在解析01时会抛出异常

https://forum.butian.net/share/1679

https://www.iculture.cc/forum-post/24115.html

1.Fastjson会把01解析成1:
2.Jackson在解析01时会抛出异常:

2.Shiro
1.使用FOFA寻找使用Shiro框架搭建的网站
2.查看页面是否有Shiro
3.使用F12抓取数据包的index.html包,查看返回包的cookie中是否存在rememberMe=deleteMe字段

3.Struts2
1.使用FOFA寻找使用Struts2框架搭建的网站
2.一般使用struts2框架后缀带do或action,可以尝试进行利用

4.Springboot
1.通过web应用程序网页标签的小绿叶图标
2.通过springboot框架默认报错页面

5.Solr识别
1.使用FOFA寻找使用Solr框架搭建的网站
2.一般开放8983端口,访问页面也可以探针到
6.Solr靶场搭建和漏洞复现
1.搭建靶场
2.获取到相应靶场网址,随便输入用户名和密码,但是要注意点击Remember me
3.在检查中网络获取数据包,找到登陆包doLogin,查看请求头中有set-Cookie:remeberMe=deleteMe。证明:该靶场或网址是Shiro搭建
4.打开ONE-FOX集成工具箱_V3.0魔改版_by狐狸中的shiro反序列化漏洞综合利用工具
1.输入目标靶场网址
2.检测当前密钥
3.爆破密钥
4.检测当前利用链,爆破利用链及回显
5.命令执行:id 发现返回用户组群,证明权限获得成功
6.使用命令执行:ls 获取到文件目录
7.继续使用内存木马置入进网址
8.打开哥斯拉→目标→添加→输入置入木马的路径, 密码,选择java的有效载荷→测试连接→成功,点击添加
9.双击进入→文件管理:获取到服务器的目录

相关推荐
程序猿DD1 小时前
Java 25 中的 6 个新特性解读
java·后端
稻草猫.1 小时前
文件 IO
java·笔记·后端·java-ee·idea
掘金码甲哥1 小时前
有关CORS跨域访问,这事没完
后端
纵有疾風起1 小时前
C++模版:模板初阶及STL简介
开发语言·c++·经验分享·开源
码事漫谈1 小时前
从外行到AI指挥官:你必须掌握的五大「程序员思维」
后端
Moonbit1 小时前
MoonBit 开发者激励计划开启|赢取价值 $20 Copilot 月卡权益!
后端
码事漫谈2 小时前
通信的三种基本模式:单工、半双工与全双工
后端
Q_Q5110082852 小时前
python+uniapp基于微信小程序团购系统
spring boot·python·微信小程序·django·uni-app·node.js·php
前端中后台2 小时前
如何防止短信验证码接口被盗刷
后端
m0_736927042 小时前
Spring Boot自动配置与“约定大于配置“机制详解
java·开发语言·后端·spring