web安全学习笔记【16】——信息打点(6)

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

#知识点:

1、业务资产-应用类型分类

2、Web单域名获取-接口查询

3、Web子域名获取-解析枚举

4、Web架构资产-平台指纹识别

------------------------------------

1、开源-CMS指纹识别源码获取方式

2、闭源-习惯&配置&特性等获取方式

3、闭源-托管资产平台资源搜索监控

------------------------------------

1、JS前端架构-识别&分析

2、JS前端架构-开发框架分析

3、JS前端架构-打包器分析

4、JS前端架构-提取&FUZZ

解决:

1、如何从表现中的JS提取价值信息

2、如何从地址中FUZZ提取未知的JS文件

3、如何从JS开放框架WebPack进行测试

------------------------------------

1、端口扫描-应用&协议

2、WAF识别-分类&识别

3、蜜罐识别-分类&识别

解决:

1、Web服务器&应用服务器差异性

2、WAF防火墙&安全防护&识别技术

3、蜜罐平台&安全防护&识别技术

------------------------------------

1、CDN服务-解释差异识别

2、CDN绕过-配置差异导致

3、CDN绕过-主动连接获取

4、CDN绕过-全网扫描获取

解决:

1、CDN服务对安全影响

2、CDN服务绕过识别手法

------------------------------------

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

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

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

解决:

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

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

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

#章节点

Web:语言/CMS/中间件/数据库/系统/WAF等

系统:操作系统/端口服务/网络环境/防火墙等

应用:APP对象/API接口/微信小程序/PC应用等

架构:CDN/前后端/云应用/站库分离/OSS资源等

技术:JS爬虫/敏感扫描/端口扫描/源码获取/接口泄漏等

技术:指纹识别/Github监控/CDN绕过/WAF识别/蜜罐识别等

#补充:

CMS(主要针对php的 Java的可能不太行)

Discuz、WordPress、Ecshop、蝉知等

前端技术

HTML5、jquery、bootstrap、Vue等

开发语言

PHP、JAVA、Ruby、Python、C#,JS等

Web服务器

Apache、Nginx、IIS、lighttpd等

应用服务器:

Tomcat、Jboss、Weblogic、Websphere等

数据库类型:

Mysql、SqlServer、Oracle、Redis、MongoDB等

操作系统信息

Linux、windows等

应用服务信息:

FTP、SSH、RDP、SMB、SMTP、LDAP、Rsync等

CDN信息

帝联、Cloudflare、网宿、七牛云、阿里云等

WAF信息

创宇盾、宝塔、ModSecurity、玄武盾、OpenRASP等。

蜜罐信息:

HFish、TeaPot、T-Pot、Glastopf等

其他组件信息

fastjson、shiro、log4j、OA办公等

演示案例:

  • 指纹识别-本地工具-GotoScan

GotoScan :cms.json 里面有很多cms可以识别出来

  • Python-开发框架-Django&Flask

Flask:

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

thinkphp

源码还是使用的某个框架开发的

YII(还是有用某些框架开发的)

Laravel 

yii

  • Java-框架组件-FastJson&Shiro&Solr&Spring

fastjson

shrio

struct

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

2、网络空间:Fofa Quake Hunter

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

#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,可以尝试进行利用

Springboot

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

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

Solr识别

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


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2807240.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

K线实战分析系列之一:标准K线图的识别

K线实战分析系列之一:标准K线图的识别 一、阳线和阴线二、光头K线三、光脚K线四、光头光脚大阳线五、纺锤线六、十字线 一、阳线和阴线 二、光头K线 如果某根K线没有上影线,就叫它光头k线 三、光脚K线 某一根K线没有下影线就叫它光脚K线 四、光头光…

广联达Linkworks GetAllData 信息泄露漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

【CSS-语法】

CSS-语法 ■ CSS简介■ CSS 实例■ CSS id 和 class选择器■ CSS 样式表■ 外部样式表(External style sheet)■ 内部样式表(Internal style sheet)■ 内联样式(Inline style)■ 多重样式 ■ CSS 文本■ CSS 文本颜色■ CSS 文本的对齐方式■ CSS 文本修饰■ CSS 文本转换■ CS…

力扣1290. 二进制链表转整数

Problem: 1290. 二进制链表转整数 文章目录 题目描述思路复杂度Code 题目描述 思路 1.记录一个变量res初始化为0,指针p指向链表头; 2.循环每次res res * 2 p -> val;p p -> next;(充分利用二进制数的特性;其中利用指针先…

Flutter开发进阶之Package

Flutter开发进阶之Package 通常我们在Flutter开发中需要将部分功能与整体项目隔离,一般有两种方案Plugin和Package,Application是作为主体项目,Module是作为原生项目接入Flutter模块。 当独立模块不需要与原生项目通讯只需要Plugin就可以&a…

Python + Google AI 自动修复 Sonar Bug 实践

前言 在工作中总会遇到种种不期而至的需求,比如前段时间突然要修复所有 Sonar Bug,涉及各种琐碎的代码风格问题,包括但不限于语法不规范、废弃注释等问题。这些项目都已经持续开发几年了,Sonar 上的问题层出不穷,各种…

记一次生产jvm oom问题

前言 jvm添加以下参数,发生OOM时自动导出内存溢出文件 -XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPath/opt 内存分析工具: MAT, 下载地址:Eclipse Memory Analyzer Open Source Project | The Eclipse Foundation, 注意工具地址…

【多线程】volatile 关键字、wait 和 notify方法详解

volatile 、wait 和 notify 🌲volatile关键字🚩保证内存可见性🚩volatile 不保证原⼦性 🌳wait 和 notify方法🚩wait()🚩notify()🚩notifyAll()方法 ⭕wait 和 sleep 的对比( 面试题…

中国农业无人机行业市场现状分析与投资前景预测研究报告

全版价格:壹捌零零 报告版本:下单后会更新至最新版本 交货时间:1-2天 第一章农业无人机行业发展综述 第一节农业无人机行业定义及分类 一、农业无人机行业的定义 农业无人机是一种无人驾驶的飞行器来帮助优化农业经营,增加作…

深入理解基于 eBPF 的 C/C++ 内存泄漏分析

对于 C/C 程序员来说,内存泄露问题是一个老生常谈的问题。排查内存泄露的方法有很多,比如使用 valgrind、gdb、asan、tsan 等工具,但是这些工具都有各自的局限性,比如 valgrind 会使程序运行速度变慢,gdb 需要了解代码…

政府采购网有哪些回款方式

政府采购网的回款方式多种多样,具体取决于采购项目的性质、规模以及采购单位与供应商之间的约定。以下是一些常见的政府采购网回款方式: 线上支付:随着电子商务的发展,越来越多的政府采购项目采用线上支付方式。这种方式方便快捷&…

C# 中 SQLite 查询数据库表中字段(列)是否存在的方法

查询SQLite数据库表中字段(列)存在的方法 使用SQL语句为:PRAGMA table_info([DeviceTrees]); 其中“DeviceTrees”为数据库表的名称。 使用SQLite Expert Professional工具,查看该语句是否起作用,这里使用的版本是…

Python中json模块介绍及学习

简介 json模块是Python标准库中的一个用于处理JSON数据的模块,它提供了一组方法来进行 JSON 数据的解析和生成。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于数据传输和配置文件。 下面是json模块的一些常…

详解Megatron中的数据混合算法(BlendableDataset)

🧑‍💻 本文主要讲解Megatron早期版本中的数据混合算法。 目录 1. 数据混合2. 源码解析3. 证明部分&讨论4. 进一步优化 1. 数据混合 在谈源码之前,我们有必要先了解一下Megatron中的数据混合思想。 给定 n n n 个数据集 D 1 , D 2 , …

Flask基础学习3

参考视频:41-【实战】答案列表的渲染_哔哩哔哩_bilibili flask 实现发送短信功能 pip install flask-mail # 安装依赖 我这里用登录的网易邮箱获取的授权码(登录QQ邮箱的授权码总是断开收不到邮件), # config # config mail MAI…

十一、Qt数据库操作

一、Sql介绍 Qt Sql模块包含多个类,实现数据库的连接,Sql语句的执行,数据获取与界面显示,数据与界面直接使用Model/View结构。1、使用Sql模块 (1)工程加入 QT sql(2)添加头文件 …

第八章:指针

第八章:指针 指针重要性: 数据库–>动态分配内存数据结构–>链表、队列、树、图等操作系统–>改善子程序的效率指针为函数提供修改变量值的手段8.1-地址和指针 变量的地址 计算机中,数据存储在内存中 内存:是内部存储器,由存储单元组成的。内存可划分为若干存储单…

Map集合特点、遍历方式、TreeMap排序及Collections和Arrays

目录 ​编辑 一、集合框架 二、 Map集合 特点 遍历方式 HashMap与Hashtable的区别 TreeMap Collections Arrays 一、集合框架 二、 Map集合 Map集合是一种键值对的集合,其中每个键对应一个值。在Java中,Map接口定义了一种将键映射到值的数据结…

02|Order by与Group by优化

索引顺序依次是 : name,age,position 案例1 EXPLAIN SELECT * FROM employees WHERE name LiLei AND position dev ORDER BY age;分析: 联合索引中只是用到了name字段做等值查询[通过key_len 74可以看出因为name字段的len74],在这个基础上使用了age进…

halcon中的一维测量

一维测量 像点到点的距离,边缘对的距离等沿着一维方向的测量都属于1D测量范畴。Halocn的一维测量首先构建矩形或者扇形的ROI测量对象,然后在ROI内画出等距离的、长度与ROI宽度一致的、垂直于ROI的轮廓线(profile line)的等距线。…