0
点赞
收藏
分享

微信扫一扫

安全学习DAY17_信息打点-语言框架&组件识别

刘员外__ 2023-08-18 阅读 72
安全学习

信息打点-WEB打点-语言框架&开发组件

文章目录

本节涉及链接&工具

cms指纹识别工具-本地工具:

https://github.com/newbe3three/gotoscan

漏洞平台&靶场(靶场功能好像不能用了

https://vulfocus.cn/

https://vulhub.org/

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

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

Fastjson/Jackson组件的判断

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

工具箱

ONE-FOX

本节知识&思维导图

请添加图片描述

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

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

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

解决:

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

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

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

基础概念介绍

框架:

简单代码的一个整合库,如果使用框架就只需要学习使用框架调用即可

如:文件上传功能时需要很多代码来实现的,框架把这个代码进行封装,调用函数即可。

影响:如果采用框架开发,代码的安全性是取决于框架的过滤机制的,代码的核心逻辑在框架中

组件:

第三方功能模块(日志记录,数据监控,数据转换等)

专门去处理某一件事情功能

Web架构

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

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

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

安全思路:第三方或团队的开发的封装代码框架,一般内置的过滤机制(安全测试着重于框架自身的漏洞)

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

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

对应Web测试手法

后端:

CMS:一般PHP开发居多源码程序

(利用源码程序名去搜漏洞情况,没有漏洞->源码去下载进行后期的代码审计)

前端

js 框架(爬取更多的js从里面筛选URL或敏感泄漏key等)

也是可以通过对js代码逻辑进行代码审计

组件:java居多,

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

直接使用漏洞利用工具

框架:

php、java、python都有,见后面知识点

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

1、在线平台见前面学习内容,本地工具适用于不出网环境

https://github.com/newbe3three/gotoscan

2、网络空间:Fofa Quake Hunter

3、网络空间:IO图标关系

框架识别特性分类

  1. Response返回包
  2. 固定端口
  3. ICO图标
  4. 特有的URL路径后缀

Python-开发框架-Django&Flask识别

Django

1、识别插件

2、Set-Cookie:expires=

Flask

1、识别插件

2、Set-Cookie:expires=

PHP-开发框架-ThinkPHP&Laravel&Yii识别

ThinkPHP:

0、识别插件

1、X-Powered-By: ThinkPHP

2、CMS识别到源码体系TP开发

Laravel:

1、识别插件

2、Set-Cookie中特征的格式

Yii:

1、识别插件

2、Set-Cookie中特征的格式

以上识别方式都是通过插件/返回包中特定信息/泄露图标等信息判断

Java-框架组件-Fastjson&Shiro&Solr&Spring识别

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

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

Fastjson/Jackson组件的判断

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

-Fastjson组件会把01解析成1

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

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

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

Shiro安全框架判断

请求包的cookie中存在rememberMe字段。

返回包中存在set-Cookie:remeberMe=deleteMe。

请求包中存在rememberMe=x时,响应包中存在rememberMe=deleteMe。

有时候服务器不会主动返回remeberMe=deleteMe,直接发包即可,将Cookie内容改为remember Me=1,若相应包有rememberMe=deleteMe,则基本可以确定网站apache shiro搭建的。

Struts2

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

即网站后缀一般是.do.action

Springboot

1、通过web应用程序网页标签的小绿叶图标

2、通过springboot框架默认报错页面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5d8pSIT4-1692282143098)(image-20230817125507477.png)]

Solr识别

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

举报

相关推荐

0 条评论