017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第1张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第2张图片

#知识点:

1、CMS指纹识别-不出网程序识别
2、开发框架识别-PHP&Python&Java
3、开发组件识别-Java常见安全漏洞组件
解决:
1、CMS识别到后期漏洞利用和代码审计
2、开发框架识别到后期漏洞利用和代码审计
3、开发组件识别到后期漏洞利用和代码审计

演示案例:

➢指纹识别-本地工具-GotoScan
➢Python-开发框架-Django&Flask
➢PHP-开发框架-ThinkPHP&Laravel&Yii
➢Java-框架组件-FastJson&Shiro&Solr&Spring

#补充

后端:

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

前端

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

组件:java居多,第三方的功能模块(日志记录,数据监控,数据转换等)
常见有过安全漏洞组件(shiro solr log4j sprintboot等)

框架:php java python都有,简单代码的一个整合库,如果使用框架就只需要学习使用框架调用即可。
如:文件上传功能是需要很多代码来实现的,框架把这个代码进行封封装,调用即可
影响:如果采用框架开发,代码的安全性是取决于框架的过滤机制

#Web架构:

1、最简单最入门的开发模型(功能代码全部手写
最容易出现漏洞,程序员水平不一,没有第三方或团队的检测,单纯的自己写 2、结合开发框架的开发模型(以框架为核心实现功能
第三方或团队的开发的封装代码框架,一般内置的过滤机制(框架漏洞)3、结合开发框架外加组件模型(以框架为核心,组件为辅实现功能
第三方或团队的开发的封装代码框架,一般内置的过滤机制(框架和组件漏洞

#指纹识别-本地工具-GotoScan(CMSEEK)

1、在线平台见前面课程,本地工具适用于不出网环境(内网环境)

https://github.com/newbe3three/gotoscan

指纹识别(识别中间件等信息)

  • 安装:解压到相关目录下cmd打开gotoscan.exe即可
  • 使用语法:
gotoscan.exe -host [https://localhost.com](https://localhost.com/)
gotoscan.exe -hosts hosts.txt

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第3张图片

2、网络空间:Fofa Quake Hunter,TideFinger 潮汐指纹 TideFinger 潮汐指纹 (tidesec.com)
3、网络空间:IO图标关系

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第4张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第5张图片

#Python-开发框架-Django&Flask

Django

1、识别插件
2、Set-Cookie:expires=或者Set-Cookie: csrftoken=

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第6张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第7张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第8张图片

Flask

1、识别插件
2、Set-Cookie:expires=或者Etag:

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第9张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第10张图片

#PHP-开发框架-ThinkPHP&Laravel&Yii

ThinkPHP:

1、识别插件
2、X-Powered-By: ThinkPHP或者直接识别ThinkPHP官方图标
3、CMS识别到源码体系TP开发

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第11张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第12张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第13张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第14张图片

Laravel:

1、识别插件
2、Set-Cookie: laravel_session=或者Set-Cookie: XSRF-TOKEN

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第15张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第16张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第17张图片

Yii:

1、识别插件
2、Set-Cookie:YII_CSRF_TOKEN

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第18张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第19张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第20张图片

#Java-框架组件-Fastjson&Shiro&Solr&Spring

52类110个主流Java组件和框架介绍:
https://blog.csdn.net/agonie201218/article/details/125300729

Fastjson/Jackson

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第21张图片

在提交JSON数据包中修改测试:
Fastjson组件会把01解析成1
Jackson组件在解析01时会抛出异常
https://forum.butian.net/share/1679

理想状态下如果站点有原始报错回显,可以用不闭合花括号的方式进行报错回显,报错中往往中会有Fastjson/Jackson的关键字:

Jackson:

Fastjson:

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第22张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第23张图片

但是实际上并不可能那么的理想,所以需要一些其他的trick来进行区分。下面探讨下两个解析器之间有什么区别。

Fastjson会把01解析成1:

Jackson在解析01时会抛出异常:

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第24张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第25张图片

Shiro

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第26张图片

请求包的cookie中存在rememberMe字段。
返回包中存在set-Cookie:remeberMe=deleteMe。
请求包中存在rememberMe=x时,响应包中存在rememberMe=deleteMe。
有时候服务器不会主动返回remeberMe=deleteMe,直接发包即可,将Cookie内容改为remember Me=1,若相应包有rememberMe=deleteMe,则基本可以确定网站apache shiro搭建的。网址http://58.63.71.214:9091/login###

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第27张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第28张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第29张图片

Struts2

一般使用struts2框架后缀带do或action,可以尝试进行利用

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第30张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第31张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第32张图片

Springboot

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

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第33张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第34张图片

Solr识别

一般开放8983端口,访问页面也可以探针到

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第35张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第36张图片

#利用Java框架组件Shiro漏洞&&密码爆破&&文件获取&&内存木马

  • 使用平台构建靶场(后面讲)
  • 获取到相应靶场网址,随便输入用户名和密码,但是要注意点击Remember me,在检查中网络获取数据包,找到登陆包doLogin,查看请求头中有set-Cookie:remeberMe=deleteMe。证明:该靶场或网址是Shiro搭建

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第37张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第38张图片

  • 打开ONE-FOX集成工具箱_V3.0魔改版_by狐狸中的shiro反序列化漏洞综合利用工具

    • 输入目标靶场网址
    • 检测当前密钥
    • 爆破密钥
    • 检测当前利用链,爆破利用链及回显
    • 命令执行:id 发现返回用户组群,证明权限获得成功
    • 使用命令执行:ls 获取到文件目录

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第39张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第40张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第41张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第42张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第43张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第44张图片

  • 继续使用内存木马置入进网址

  • 打开哥斯拉→目标→添加→输入置入木马的路径, 密码,选择java的有效载荷→测试连接→成功,点击添加

  • 双击进入→文件管理:获取到服务器的目录

    017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第45张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第46张图片

017-信息打点-语言框架&开发组件&FastJson&Shiro&Log4j&SpringBoot等_第47张图片

你可能感兴趣的:(log4j,spring,boot,后端,web安全)