08-信息收集-架构、搭建、WAF等
信息收集-架构、搭建、WAF等
- 信息收集-架构、搭建、WAF等
- 一、前言说明
- 二、CMS识别技术
- 三、源码获取技术
- 四、架构信息获取技术
- 五、站点搭建分析
- 1、搭建习惯-目录型站点
- 2、搭建习惯-端口类站点
- 3、搭建习惯-子域名站点
- 4、搭建习惯-类似域名站点
- 5、搭建习惯-旁注,c段站点
- 6、搭建习惯-搭建软件特征站点
- 六、WAF防护分析
- 1、什么是wAF应用?
- 2、如何快速识别WAF?
- 3、识别wAF对于安全测试的意义?
- 七、涉及资源
信息收集-架构、搭建、WAF等

一、前言说明
在安全测试中,信息收集是非常重要的一个环节,此环节的信息将影响到后续的成功几率,掌握信息的多少将决定发现漏洞机会大小,换言之决定着是否能完成目标的测试任务。也可以很直接的跟大家说:渗透测试的思路就是从信息收集这里开始,你与大牛的差距也是从这里开始的!
二、CMS识别技术
-
网站下方的CMS图标。
-
搜索特定的ico文件 — hash值与CMS指纹识别库匹配。
-
查看网站的搭建平台。
-
查看网站的开发语言的脚本框架的漏洞—网站的文件路径。
-
分析目录的工作原理 — ip和域名的文件结构。
-
搜索特定的URL获取相似站点。
-
查看网站的响应包。
三、源码获取技术
-
搜索引擎搜索。
-
第三方源码站—站长之家,菜鸟源码。
-
淘宝咸鱼。
-
内部渠道。
四、架构信息获取技术
即怎么判断操作系统等。
1.Nmap扫描识别端口和OS的类型。
2.网站区分大小写判断系统。
3.脚本识别数据库 — asp+Access;PHP+MySQL;aspx+mssql;jsp+mssql/orcale;Python+mogodb。
4.os识别数据库 — windows才有Access+sqlserver。
5.端口扫描 — 端口号对应不同的数据库。
6.Nmap扫描第三方平台和软件—phpmyadmin。
五、站点搭建分析
1、搭建习惯-目录型站点
简单的理解就是主站上面存在其他的cms程序
例如:学生网站的上面通过后台扫描探针发现有一个bbs的目录一点击发现是一个bbs的论坛网站如:www.xxx.com/bbs我们把这个成为目录型网站、可以有两种找到漏洞的思路一个是主站的漏洞,另外的一个是bbs上面的漏洞。
前提迪师傅演示的两个网站:sti.blcu.cn和sti.blcu.cn/bbs(网站好像已经没有了)前者是主站,后者是由discuz搭建的论坛两个目录的相差:目录下边源码明显不同 结果一方出现漏洞,另一方也能遭殃等于给与两套漏洞方案 总结找到这个会出现这种目录的方法:文件扫描(铸剑)
sti.blcu.edu.cn

sti.blcu.edu.cn/bbs

2、搭建习惯-端口类站点
案例一个网站:http://www.0516jz.com/(默认80端口)和http://www.0516jz.com:8080/login主站装载在80端口,论坛、微新闻等可以装载其他端口,归根结底都在一台服务器上。1. 域名打开是一个网站2. 域名后面+8080端口后,打开的是另外的一个网站3. 8080端口出现漏洞,80端口也会受到影响操作对网站进行端口扫描,看开放的端口,全部访问一遍(用nmap扫描)
http://www.0516jz.com/

http://www.0516jz.com:8080/

有的站点不是使用的是默认的站点80而是其他的端口、可以使用shodan这种工具去收集端口。
3、搭建习惯-子域名站点
子域名两套CMS
案例www.goodlift.net和bbs.www.goodlift.net操作两个站点,由两套CMS程序搭建,这两套网站源码,可能不在同一服务器。当申请“/robots.txt”时,能返回出默认的内部文件信息。补充inurl:xxx.com 可以查询子域名,必应不行。这也是俩例子🌰:http://www.etiantian.com/https://bhsf.lezhiyun.com/cms/
bbs.www.goodlift.net

这个页面的源码是用 Discuz搭建的。
www.goodlift.net

这个页面的源码是:

**备注:**现在的主流网站都是采用的这种模式且子域名和网站之间很有可能是不在同一台的服务器上面。
-
分析 — 两个网站可能在,也可能不在同一个服务器上面。
- 相同ip。

- 不同ip — 但是是同一个网段。

#原理:www.---设置一个ip。子域名---设置一个ip(可以和主站相同,也可以不同)。
4、搭建习惯-类似域名站点
有些公司由于业务的发展将原来的域名弃用、选择了其他的域名但是我们访问他的旧的域名还是能够访问、有的是二级域名的更换而有的是顶级域名的更换。
网站经常换域名,特别是违法网站,正规网站也有换域名的时候(有些域名辨识度不高等)。案例,多域名http://www.jmlsd.com/http://www.jmlsd.cn/http://www.jmlsd.net/ 结论域名多,选择性多,不同的域名有着不一样的应用,看到的东西不一样,漏洞的可能性也大。
可以通过他的旧的域名找到一些突破口
http://www.jmlsd.com/

http://www.jmlsd.cn/

www.axgc168.com


例如:京东的网站是jd.com 那么他就有可能是采用了jd.net、 jd.cn等域名我们采用社工的方式去尝试获取他的相关域名信息。
5、搭建习惯-旁注,c段站点
`旁注`:同一个服务器上面存在多个站点、但是你要攻击的是A网站由于各种原因不能完成安全测试。就通过测试B网站进入服务器然后在攻击A网站最终实现目的。

`C段`:不同的服务器上面存在不同的网站,通过扫描发现与你渗透测试的是同一个网段最终拿下服务器、然后通过内网渗透的方式拿下渗透服务器。

在线工具:https://www.webscan.cc/

- 假设这个网站搞不了。

- 进行旁注查询。


通过旁注查询可以发现同一个服务器上面有两个站点可以通过对另外的一个站点进行突破。
#不推荐使用C段
6、搭建习惯-搭建软件特征站点
有的网站是借助于第三方的集成搭建工具实现例如:PHPstudy、宝塔等环境这样的集成环境搭建的危害就是泄露了详细的版本信息。
搭建平台—宝塔,phpStudy,inmap等等,具有安全隐患,如phpStudy上面会有PhpMyAdmin,账号默认登录。


http://www.etiantian.com/#/ :不是一键搭建的平台。

真实网站测试 — https://www.shodan.io — Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45


#通过ip/phpmyadmin登录测试—root登录,登录失败,说明可能修改过了。
六、WAF防护分析
1、什么是wAF应用?
Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。
利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
2、如何快速识别WAF?
1、采用工具wafwoof
获取地址:https://codeload.github.com/EnableSecurity/wafw00f/zip/refs/heads/master
https://github.com/EnableSecurity/wafw00f
安装之前一定要有python的环境不然安装不上。
# unzip wafw00f-master.zip
# python3.8 setup.py install
# ls -ld wafw00f
drwxr-xr-x 6 root root 4096 6月 10 17:22 wafw00f
# cd wafw00f
#python main.py https://www.hlszsb.com/[*] Checking https://www.hlszsb.com/
[+] Generic Detection results:
[-] No WAF detected by the generic detection
[~] Number of requests: 7
wafw00f的缺点判断的不是特别的准确存在误报或识别不出的情况。

2、在有些网站的请求信息当中有的网站没有做安全信息上面留下了waf的相关信息

3、使用nmap指纹检测。
nmap --script==http-waf-fingerprintnmap --script=http-waf-detec
4、identYwaf
参考地址:https://github.com/stamparm/identywaf
C:\Users\admin\Desktop\security\软件\identYwaf-master>python identYwaf.py https://www.manjaro.cn/__ ______ ___ ___ ____ ______ | T T __ __ ____ _____
l j| \ / _]| \ | T| | || T__T T / T| __|| T | \ / [_ | _ Yl_j l_j| ~ || | | |Y o || l_| | | D YY _]| | | | | |___ || | | || || _|j l | || [_ | | | | | | ! \ / | | || ]
|____jl_____jl_____jl__j__j l__j l____/ \_/\_/ l__j__jl__j (1.0.134)[o] initializing handlers...
[i] checking hostname 'www.manjaro.cn'...
[i] running basic heuristic test...
[i] rejected summary: 200 ('<title>����ҳ��</title>')
[-] non-blind match: -
[i] running payload tests... (45/45)
[=] results: '.xx.xxxxx..xxxxxxxx.xxx.x...x.xxx......x..xxx'
[=] hardness: hard (60%)
[=] blocked categories: SQLi, XSS, XPATHi, XXE, PHPi, PT
[=] signature: '90fa:RVZXu261OEhCWapBYKcPk4JzWOpohM4JiUcMr2RXg1uQJbX3uhdOnthtOj+hX7AA16FcPhJOdLoXo2tKaK99n+i7c4RmkgI2FZjxtDtAeq+c3qA4chW1XaTD'
[+] blind match: 'Safedog' (100%)
与wafwoof相比运行速度慢,比较稳定推荐还是使用这一款工具。

3、识别wAF对于安全测试的意义?
对于一个网站要是使用了waf而渗透人员没有识别直接使用工具进行扫描有可能会导致waf将你的ip地址拉入黑名单而不能访问。而识别waf在于有针对性行的绕过各个厂商的waf可能存在着不同的绕过思路。
七、涉及资源
https://www.shodan.io
https://www.webscan.cc
https://github.com/EnableSecurity/wafw00f
相关文章:
08-信息收集-架构、搭建、WAF等
信息收集-架构、搭建、WAF等 信息收集-架构、搭建、WAF等一、前言说明二、CMS识别技术三、源码获取技术四、架构信息获取技术五、站点搭建分析1、搭建习惯-目录型站点2、搭建习惯-端口类站点3、搭建习惯-子域名站点4、搭建习惯-类似域名站点5、搭建习惯-旁注,c段站点…...
Qt --- 显示相关设置 窗口属性等
主界面,窗口 最小化 最大化 关闭按钮、显示状态自定义: setWindowFlags(Qt::CustomizeWindowHint); setWindowFlags(Qt::WindowCloseButtonHint); //只要关闭按钮 setWindowFlags(Qt::WindowFlags type) Qt::FrameWindowHint:没有边框的窗口 Qt::Window…...
使用小程序实现左侧菜单,右侧列表双向联动效果
目录 引言理解双向联动效果的重要性scrollview属性介绍实现左侧菜单数据准备渲染菜单列表监听菜单点击事件实现右侧列表数据结构设计初始数据渲染监听列表滚动事件左侧菜单与右侧列表联动获取当前滚动位置计算对应菜单项联动效果优化用户体验考虑平滑滚动效果菜单高亮状态...
selenium中处理验证码问题
验证码 基本作用:可以实现当前访问页面的数据安全性、还可以减少用户的并发数; 类型:1、纯数字、纯字母;2、汉字组合;3、数学运算题;4、滑动;5、图片(选不同的、选相同、成语顺序&…...
EMR电子病历系统 SaaS电子病历编辑器源码 电子病历模板编辑器
EMR(Electronic Medical Record)指的是电子病历。它是一种基于电子文档的个人医疗记录,可以包括病人的病史、诊断、治疗方案、药物处方、检查报告和护理计划等信息。EMR采用计算机化的方式来存储、管理和共享这些信息,以便医生和医…...
一些自定义hooks
文章目录 1、点击框外隐藏弹窗hook 1、点击框外隐藏弹窗hook **描述:**有一个需要自己封装弹窗的组件,实现点击弹窗框外时隐藏弹窗 代码: import { useEffect } from “react”; // 点击框外hooks import { useEffect } from "react&q…...
基于Citespace、vosviewer、R语言的文献计量学可视化分析技术及全流程文献可视化SCI论文高效写作方法
文献计量学是指用数学和统计学的方法,定量地分析一切知识载体的交叉科学。它是集数学、统计学、文献学为一体,注重量化的综合性知识体系。特别是,信息可视化技术手段和方法的运用,可直观的展示主题的研究发展历程、研究现状、研究…...
lEC 61068-2-14_2023环境试验.第2-14部分:试验.试验N:温度变化, 最新版发布
https://download.csdn.net/download/m0_67373485/88251313 lEC 61068-2-14_2023环境试验.第2-14部分:试验.试验N:温度变化 A change of temperature test is intended to determine the effect on the specimen of a changeof temperature or a succession of changes of tem…...
CFDEM学习笔记
本文用来记录自己学习CFDEM的笔记。 资料总结 虚拟机:链接:https://pan.baidu.com/s/1MPMTJQfl76mW0H5bbT_rAg 提取码:rqli 开机密码:530944988 知乎博客:作者说明了如何关闭颗粒碰撞计算来达到提升计算速度。 Githu…...
SpringBoot入门篇1 - 简介和工程创建
目录 SpringBoot是由Pivotal团队提供的全新框架, 其设计目的是用来简化Spring应用的初始搭建以及开发过程。 1.创建入门工程案例 ①创建新模块,选择Spring初始化,并配置模块相关基础信息 ②开发控制器类 controller/BookController.jav…...
MyBatis-Plus updateById不更新null值
文章目录 前言方式一 调整全局的验证策略方式二 调整字段验证注解方式三 使用 UpdateWrapper 前言 在 MyBatis-Plus 中,使用updateById,null字段并不会更新,其实是和更新的策略有关,当然,也有插入策略,本文…...
用pytorch实现AlexNet
AlexNet经典网络由Alex Krizhevsky、Hinton等人在2012年提出,发表在NIPS,论文名为《ImageNet Classification with Deep Convolutional Neural Networks》,论文见:http://www.cs.toronto.edu/~hinton/absps/imagenet.pdf …...
LeetCode560.和为k的子数组
这道题我用的是暴力法,当然也是不断的提交不断发现问题改出来的,比如我之前是算到和大于目标值就break,其实不行因为后面还可以有负数,我把break删了。后面和为目标之后就答案1然后break然后下一次遍历,测试用例中就出…...
echarts 的dataZoom滑块两端文字被遮挡
问题: 期望: 解决方案: 1:调整宽度(4版本的没有width属性) 2. 参考:echarts图标设置dataZoom拖拽时间轴时自动调整两侧文字的位置_datazoom 位置_乌栖曲的博客-CSDN博客 设置文字的定位 cons…...
MongoDB基本使用
在 MongoDB 中我们可以使用use命令来创建数据库,如果该数据库不存在,则会创建一个新的数据库,如果该数据库已经存在,则将切换到该数据库。使用use命令创建数据库的语法格式如下: --use database_name use my_db1;数据…...
C++ 中的左值(Lvalues)和右值(Rvalues)
C 中有两种类型的表达式: 左值(lvalue):左值参数是可被引用的数据对象,例如,变量、数组元素、结构成员、引用和解除引用的指针都是左值。非左值包括字面常量(用引号起的字符串除外,…...
html流光按钮
出处bilibili猫咪爱狗 <!DOCTYPE html> <html><head><style>body {/*内容居中,背景色*/height: 100vh;display: flex;justify-content: center; align-items: center;background-color: #000;}a { /*水平垂直居中*/position: re…...
HAProxy+nginx搭建负载均衡群集
目录 一、常见的Web集群调度器 二、HAProxy群集介绍 1、Haproxy的特性 : 2、Haproxy常用的调度算法 ① 轮询调度(Round Robin) ② 最小连接数(Least Connections) ③ 基于来源访问调度算法(Source Hashing&am…...
logback-spring.xml 的配置及详解(直接复制粘贴可用)
logback-spring.xml 的配置及详解 一、注意实现二、配置及详解 一、注意实现 logback-spring.xml 中有三处需要根据实际业务进行修改,直接查找“(根据业务修改)”即可进行定位。 如果不想修改,直接复制粘贴到自己系统运行也可以&…...
C语言易错点整理
前言: 本文涵盖了博主在平常写C语言题目时经常犯的一些错误,在这里帮大家整理出来,一些易错点会帮大家标识出来,希望大家看完这篇文章后有所得,引以为戒~ 一、 题目: 解答: 首先在这个程序中…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
