信息搜集 ---开发框架识别

开发框架识别

插件推荐

插件商店搜索wappalyzer

Python - Django&Flask

Django

1、wappalyzer插件

2、返回数据包的特征字段 Set-Cookie:expires=

Flask

1、wappalyzer插件

2、返回数据包的特征字段 Set-Cookie:expires= 或 Etag: "flask

PHP - ThinkPHP&Laravel&Yii

ThinkPHP

1、wappalyzer插件

2、响应数据包特征字段 x-powered-by:ThinkPHP

3.报错界面

Laravel

1、wappalyzer插件

2、响应数据包特征字段 Set-Cookie: laravel_session= 或者Set-Cookie: XSRF-TOKEN=


Yii

1、wappalyzer插件

2、响应头特征 Set-Cookie:YII_CSRF_TOKEN

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

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

52类110个主流Java组件和框架介绍_基于java的组件有哪些-CSDN博客

Fastjson和Jackson组件区分

推荐一篇很好的文章,特别详细奇安信攻防社区-浅谈黑盒识别Fastjson/Jackson组件

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

Fastjson

Jackson

2、Fastjson 1.2.70会把NaN解析成0 但是 Fastjson 1.2.37会抛出异常 而且 Jackson在解析NaN时会抛出异常:

Fastjson 1.2.70:

Fastjson 1.2.37:

Jackson:

3、Fastjson支持注释符 而 Jackson默认情况下会报错:

Fastjson:

Jackson:

4、Fastjson能正常解析单引号包裹的字段 而 Jackson会抛出异常

Fastjson:

Jackson:

5、Fastjson能正常解析缺失的值(忽略掉缺失的值) 而Jackson会抛出异常

Fastjson:

Jackson:

Apache Shiro

1、请求包的cookie字段存在rememberMe字段特征

2、响应头的Set-Cookie字段 存在 remember= 特征

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

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

Struts2

1、一般使用struts2框架后缀带do或action


Springboot

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

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

Solr识别

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

相关推荐
咖啡八杯5 小时前
GoF设计模式——备忘录模式
java·后端·spring·设计模式
Flittly1 天前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
咖啡八杯2 天前
GoF设计模式——中介者模式
java·后端·spring·设计模式
Flittly4 天前
【AgentScope Java新手村系列】(14)人机交互
java·spring boot·spring
兵慌码乱6 天前
请销假管理系统的分层架构设计与核心模块实现
flask·sqlalchemy·python web·apscheduler·web 系统架构·假期管理系统·审批工作流
唐青枫8 天前
Java Spring WebFlux 实战指南:用 Mono、Flux 和 WebClient 写响应式接口
java·spring
咖啡八杯9 天前
GoF设计模式——策略模式
java·后端·spring·设计模式
呱呱复呱呱10 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
Flittly10 天前
【AgentScope Java新手村系列】(11)中断与恢复
java·spring boot·spring
dunky11 天前
Spring 的三级缓存与循环依赖
后端·spring