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语言题目时经常犯的一些错误,在这里帮大家整理出来,一些易错点会帮大家标识出来,希望大家看完这篇文章后有所得,引以为戒~ 一、 题目: 解答: 首先在这个程序中…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...

优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...