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语言题目时经常犯的一些错误,在这里帮大家整理出来,一些易错点会帮大家标识出来,希望大家看完这篇文章后有所得,引以为戒~ 一、 题目: 解答: 首先在这个程序中…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
华为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…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
