Day23 APP应用&产权渠道&服务资产&通讯抓包&静态提取&动态调试&测试范围
ICO 图标:
1、某个应用系统的标示
2、某个公司/机构/个人团队的标示
Python-开发框架-Django&Flask
Django
1、识别插件
2、固定的数据包格式:Set-Cookie:expires=
Flask
1、识别插件
2、固定的数据包格式:Etag: *flask X-Powered-By: Flask
Tornado
1、识别插件
2、固定的数据包格式:Server: TornadoServer
JavaScript-开发框架-Vue&Node.js
Vue
1、识别插件
2、JS 语法和加载文件
Node.js
1、识别插件
2、固定的数据包格式:ETag: W/”
PHP-开发框架-ThinkPHP&Laravel&Yii
ThinkPHP
1、识别插件
2、X-Powered-By: ThinkPHP
3、CMS 识别到源码体系 TP 开发
Laravel
1、识别插件
2、Set-Cookie 中特征的格式 XSRF-TOKEN= laravel_session=
Yii
1、识别插件
2、Set-Cookie 中特征的格式 YII_CSRF_TOKEN=
Java-框架组件-Fastjson&Shiro&Solr&Spring
52 类 110 个主流 Java 组件和框架介绍:
https://blog.csdn.net/agonie201218/article/details/125300729
框架:
Struts2
一般使用 struts2 框架后缀带 do 或 action,可以尝试进行利用
SpringBoot
1、默认 web 应用标签小绿叶图标
2、通过 springboot 框架默认页面
3、ICO 源码体系采用 SpringBoot 开发
组件:
FastJson/Jackson
在提交 JSON 数据包中修改测试:
FastJson 组件会把 01 解析成 1
Jackson 组件在解析 01 时会抛出异常
https://forum.butian.net/share/1679
Shiro
请求包的 cookie 中存在 rememberMe 字段。
返回包中存在 set-Cookie : remeberMe=deleteMe。
请求包中存在 rememberMe=x 时,响应包中存在 rememberMe=deleteMe。
有时候服务器不会主动返回 remeberMe=deleteMe,直接发包即可,将 Cookie 内容改为 remember Me=1,若相应包有 rememberMe=deleteMe,则基本可以确定网站 apache shiro 搭建的。
Solr 识别
一般开放 8983 端口,访问页面也可以探针到
三种方法对APP进行信息收集
方法对比
抓包分析:
优点:无需反编译
缺点:可能遇到代理检测
静态提取:
需要反编译APP
可能遇到加壳保护
动态调试:
信息最全面
依赖APP支持调试
优先级:
动态调试(支持时优先使用)
静态提取(动态不可用时)
抓包分析(作为最后手段)
工具推荐:
apkleaks:GitHub开源工具
AppInfoScanner:支持多平台信息扫描
MobSF:自动化移动应用安全测试框架
工具使用:
https://github.com/projectdiscovery/nuclei
夜雨聆风