懒人一键:
01.基础概念
- 域名:IP地址不便于记忆,故采用域名系统和DNS与ip地址映射。
- DNS:分布式网络目录服务,主要用于域名和ip地址的转换
- 本地HOSTS文件:优先解析ip的地址的一种菜单,如某些加速软件的原理
- CDN:缓存节点技术,工作原理:什么是CDN?它解决了什么难题?5分钟让你明明白白!-腾讯云开发者社区-腾讯云 (tencent.com)
- 后门:指绕过安全控制而获取对程序或系统访问权的方法,免杀
- web组成架构:源码(java、php)、操作系统、中间搭建平台(nginx、apache)、数据库
02.数据包拓展
浏览器与服务器代理
正常情况下:浏览器发送 Request请求数据包 到放服务器,服务器 返回 Response响应包
代理情况下:在服务器与客户传输数据时,先进行截获,再发送。
HTTPS与HTTP
HTTP 与 HTTPS 的区别 | 菜鸟教程 (runoob.com)
http:HTTP->TCP->IP
https:HTTP-> SSL/TLS->TCP->IP (有证书或者加密协议)
两者区别:
1. HTTP 明文传输,数据未加密,安全性差,HTTPS(SSL+HTTP) 数据传输加密,安全性好。
2. 使用 HTTPS 协议需要到 CA(数字证书认证机构) 申请证书。
3. HTTP 页面响应速度比 HTTPS 快,因为 HTTP 使用 TCP 三次握手进行连接建立 ,客户端、服务器需要交换 3个包,而 HTTPS 除了 TCP 的三个包,还要加上 SSL 握手需要的 9 个包,所以一共是 12 个包。
4. HTTP 和 HTTPS 使用的是不同的连接方式,端口也不一样,前者80,后者443。
5. HTTPS 就是建构在 SSL/TLS 之上的 HTTP 协议,所以,要比较 HTTPS 更耗费服务器资源。
数据包
HTTP工作流程:建立连接->发送请求数据包->发送响应数据包->关闭连接
Request请求数据包格式
1.请求行:请求类型/请求资源路径、协议版本和类型
2.请求头:一些键值对,浏览器与web服务器之间都可以发送,特定的某种意义
3.空行:请求头与请求体之间用一个空行隔开
4.请求体:要发送的数据(一般会post提交会使用)例:user=123&pass=123
请求行:请求类型/请求资源路径、协议的版本和类型
由三个标记组成:请求方法、请求URL和HTTP版本,它们用空格分开。
例如: GET / index.html HTTP/x.x
HTTP 规划定义了8种可能的请求方法:
GET:检索URL中标识资源的一个简单请求
HEAD:与GET方法相同,服务器只返回状态行和头标,并不返回请求文档
POST:服务器接收被写入客户端输出流中数据的请求
PUT:服务器保存请求数据作为指定URL新内容的请求
DELETE:服务器删除URL中命令的资源的请求
OPTIONS:关于服务器支持的请求方法信息的请求
TRACE:web服务器反馈HTTP请求和其头标的请求
CONNECT:已文档化,但当前未实现的一个方法,预留做隧道处理
请求头:由关键字/值对组成,每行一对,关键字和值用冒号分享
HOST:主机或域名地址
Accept:指浏览器或其他客户可以接受的MIME文件格式,servlet可以根据它判断并返回适当的文件格式
User-Agent:是客户浏览器名称
Host:对应网址URL中的web名称和端口号
Accept-Language:指出浏览器可以接受的语言种类,如en或者en-us,指英语
connection:用来告诉服务器是否可以维持固定的HTTP连接、http是无连接的,HTTP/1.1使用Keep-Alive为默认值,这样当浏览器需要多个文件时(如一个HTML文件和相关的图形文件),不需要每次都建立连接
Cookie:浏览器用这个属性向服务器发送Cookie。Cookie是在浏览器中寄存的小型数据体,他可以记载服务器相关的用户信息,也可以用来实现会话功能
Referer:表明产生请求的网页URL,这个属性可以用来跟踪web请求是从什么网站来的。如比从网页/icconcept/index.jsp中点击一个链接到网页/icwork/search,再向服务器发送的GET/icwork/search中的请求中,Referer是http://hostname:8080/icconcept/index.jsp
Content-Type:用来表明request的内容类型,可以用HttpServeletRequest的getContentType()方法取得。
Accept-Charset:指出浏览器可以接受的字符编码
Accept-Encoding:指出浏览器可以接受的编码方式。编码方式不同于文件格式,它是为了压缩文件传递速度。浏览器在接收到web响应之后再解码,然后再检查文件格式
空行:请求头与请求体之间用一个空行隔开
最后一个请求头标之后是空行,发送回车符和退行,通知服务器以下不再有头标。
请求体:发送的数据(一般post提交会使用)
使用POST传送,最常使用的是Content-Type和Content-Length头标
Response返回数据包
一个响应包由4部分组成:状态行+响应头标+空行+响应数据(与请求包有点类似)
1.状态行:协议版本、数字形式的状态代码和状态描述,各元素之间以空格分隔
2.响应头标:包含服务器类型、日期、长度、内容类型等
3.空行:响应头与响应体之间用空行隔开
4.响应数据:浏览器会将实体内容中额数据取出来,生成相应的页面
HTTP响应码(status)
1xx:信息,请求收到,继续处理
2xx:成功,行为被成功的接收、理解和采纳
3xx:重定向,为了完成请求,必须进一步执行的动作
4xx:客户端错误
5xx:服务器错误
200:存在文件
403:存在文件夹
3xx:均可能存在
404:不存在文件及文件夹
500:均可能存在
响应头标:包含服务器类型、日期、长度、内容类型等
像请求头标一样,它们指出服务器的功能,标识出响应数据的细节
空行:响应头与响应体之间用空行隔开
最后一个响应头标之后是一个空行,发送回车符和退行,表面服务器以下不再有头标。
响应数据:浏览器会将实体内容中的数据取出来,生成相应的页面
HTML文档和图像等,也就是HTML本身。
03.搭建安全(中间件)扩展
- 常见搭建平台脚本启用:ASP,PHP,ASPX,JSP,PY,JAVAWEB等环境
- 域名IP目录解析安全问题:IP地址可以访问发现更多内容,而域名访问只能发现一个文件夹下的所有文件。IP地址访问可以发现程序源码备份文件和敏感信息。访问网站的时候,可以访问域名,也可以访问IP地址。访问域名一般会指向某个目录,而访问IP地址一般会指向根目录;
- 常见文件后缀解析对应安全:指定后缀名对应某个文件,访问网站出现遇到不能解析的文件就是中间件可能默认或者添加某些设置导致解析时出现问题
- 思路:抓取网站的搭建平台信息–>查看对应版本是否存在中间漏洞–>漏洞利用
中间件常见漏洞信息:见工具集
练习:ubuntu搭建vulhub靶场,自行练习
04.WEB源码拓展
前言: WEB源码在安全测试中是非常重要的信息来源,可以用来代码审计漏洞也可以用来做信息突破口。如:获取某ASP源码后可以采用默认数据库下载为突破,获取某其他脚本源码漏洞可以进行代码审计挖掘或分析其业务逻辑等
拿到源码,从下面角度出发:
常见CMS:WordPress、halo、ghost
#数据库配置文件,后台目录,模版目录,数据库目录等
#ASP,PHP,ASPX,JSP,JAVAWEB等脚本类型源码安全问题
#社交,论坛,门户,第三方,博客等不同的代码机制对应漏洞
#开源,未开源问题,框架非框架问题,关于CMS识别问题及后续等
#关于源码获取的相关途径:搜索,咸鱼淘宝,第三方源码站,各种行业对应
#总结:
关注应用分类及脚本类型估摸出可能存在的漏洞(其中框架类例外),在获取源码后可进行本地安全测试或代码审计,也可以分析其目录工作原理(数据库备份,bak文件等),未获取到的源码采用各种方法想办法获取!
关于WEB源码目录结构
- 网站的脚本类型
- 网站的管理后台目录
- 网站的数据目录—包含数据库配置文件等
- 其他—template模板目录、member会员相关文件
关于WEB源码脚本类型源码安全问题
关于WEB源码应用分类
社交,论坛,门户,第三方,博客等不同的应用,对应的漏洞也不尽相同,可以根据业务不同,重点关注相关漏洞,放弃无关漏洞,节约时间
关于WEB源码其他说明
- 框架开发—直接找脚本语言框架的漏洞
- 非框架开发—找代码的漏洞
- CMS识别(网上开源代码)—如何判断是用什么程序搭建的(人工和工具,工具就是扫描某CMS特有程序文件来判断)—网上公开漏洞
- 开源—能识别并且在网上下载(白盒)
- 内部—没有源码或不知道—常规的渗透测试(黑盒)
- 源码获取—扫描工具扫描备份文件—cms获取源码—特定渠道(灰色网站源码)
- 源码获取的相关途径,包括 搜索引擎搜索,闲鱼淘宝,第三方源码站(菜鸟源码),各种行业对应(源码之家,站长下载)。
05.系统及数据库拓展
操作系统层面
1、识别操作系统常见方法:
---有网站的:通过网站的手工识别方法判断:Windows对网址大小写不敏感,Linux对大小写敏感。可以在网页中替换网站路径的大小写进行测试。
---没有网站的:通过nmap命令进行扫描:nmap -O IP 地址 ,或者工具masnmapscan(速度十分快)。
通过PING命令返回的TTL来判断目标主机的操作系统类型。不同的操作系统的默认TTL值是不同的(判断依据)采用近似比对。但是当用户修改了TTL值的时候,就会误导我们的判断,所以不一定准确。
下面是默认操作系统的TTL:
WINDOWS NT/2000 TTL:128
WINDOWS 95/98 TTL:32
UNIX TTL:255
LINUX TTL:64
WIN7 TTL:64
2、两者区别及识别意义
windows和linux的目录结构不一样;
windows和linux对大小写的敏感程度不一样;
windows和linux的漏洞不一样,可能windows的漏洞在Linux上就不能运用。
3、操作系统层面漏洞类型对应意义
不同漏洞会造成不同漏洞利用条件,有些漏洞在实践中需要额外的前提条件、很难利用,可以直接放弃。
4、简要操作系统层面漏洞影响范围
有些漏洞会对操作系统造成崩溃、而有些系统只是蓝屏、或者是权限的提升。
我们特别需要学习的漏洞是一些造成权限丢失的漏洞,因为可以帮助我们提权,比如ms17010就是一个高危漏洞,它跟权限挂钩,而且不需要一些额外的苛刻条件,只要是windows操作系统,没有打补丁,并且使用了smb,开放了445端口,就可能被利用。
数据据库层面
不同数据库漏洞类型、攻击方式都不同,每种脚本语言都有对应的推荐的数据库,因为使用推荐数据库兼容性会比较好。
默认的语言搭配的数据库:
1.组合类型asp + access/mssql
2.组合类型php + mysql
3.组合类型aspx+mssql
4.组合类型jsp +mysql/oracle
5.组合类型Python + MongoDB
常见的数据库默认端口号:
一、关系型数据库
1、MySql数据库 ,默认端口是: 3306;
2、Oracle数据库 ,默认端口号为:1521;
3、Sql Server数据库 ,默认端口号为:1433;
4、DB2数据库, 默认端口号为:5000;
5、PostgreSQL数据库, 默认端口号为:5432;
6、国产的DM达梦数据库, 默认端口号为:5236。
二、NoSql数据库(非关系型数据库):
1.Redis数据库,默认端口号:6379;
2.Memcached数据库,默认端口号:11211 ;
3.MongoDB数据库,默认端口号:27017;
通过nmap -o ip 命令的返回情况进行判断端口开放情况
常见数据库漏洞:弱口令、数据库漏洞
影响范围:数据库权限、网站权限(登录后台)、修改网页内容
第三方层面
不同的第三方软件或工具存在不同的漏洞、识别到更多的信息对收集到的漏洞也就越多
如何判断有那些第三方平台或软件:通过端口扫描:nmap -O -sV IP地址
常见第三方平台或软件漏洞类型及攻击:弱口令、软件漏洞
第三方平台或软件安全测试的范围:直接获取到软件的权限便于进一步的提权和攻击
补充:除去常规WEB安全及APP安全测试外,类似服务器单一或复杂的其他服务(邮件,游戏,负载均衡等),也可以作为安全测试目标,此类目标测试原则只是少了WEB应用或其他安全问题。
06.加密算法
#常见加密编码等算法解析
MD5,SHA,ASC,进制,时间戳,URL,BASE64,Unescape,AES,DES等
#常见加密形式算法解析
直接加密,带salt,带密码,带偏移,带位数,带模式,带干扰,自定义组合等
#常见解密方式(针对)
枚举,自定义逆向算法,可逆向
#了解常规加密算法的特性
长度位数,字符规律,代码分析,搜索获取等
07.CDN技术与绕过
CDN并不利于我们的安全测试,原因:当第一个访问者进行访问下载后,会在该地区的运营商服务器上留下缓存,以便下次访问。但是网站上的CDN的缓存有时效性,与真实目标还是有所差异,当你网站扫描做请求的时候,其实并不是真实的目标主机,而是扫描的本地上的缓存。CDN会隐藏服务器真实的ip地址,无法对目标网站的操作系统进行渗透,但CDN站点又可以理解为是目标站点的镜像站点(大多数都是静态cdn加速),拥有相同的网站架构,且CDN服务器可与站点服务器进行交互,因此SQL注入,XSS等漏洞的挖掘并不受太大影响。
如何判断CDN服务是否存在
利用多节点技术进行请求返回判断:如果ping的结果只有一个IP,就没有CDN;若是不止一个IP,则有CDN。
http://ping.chinaz.com/
http://ping.aizhan.com/
http://ce.cloud.360.cn/
使用CDN工具查询:
http://www.cdnplanet.com/tools/cdnfinder/
常见的CDN绕过技术
1.子域名查询:有些网站为了节约主站做了CDN服务而子站是没有做CDN服务,3种子站部署CDN的情况:
- 一是跟主站相同IP,此时我们知道了子站IP,相当于知道了主站IP;
- 二是跟主站IP不同,但是网段相同,此时可以扫描相同网段是否存活其他主机,大概率就是主站IP。比如192.168.1.100是子站IP,那么就扫描1-254网段判断;
- 三是子站IP和主站IP完全没有关系,此种情况我们无法判断,暂不考虑。
2.邮件服务查询:邮箱大部分都是内部人在访问,且访问的量也不是很大,一般不做CDN。且邮件服务器是对方发邮件给你,它的真实IP地址会泄露,根据对方邮件服务器给我们发送的邮件可以判定对方邮件服务器的地址。
3.国外地址请求:有些网站为了节约成本,它会只考虑它的客户群体的地区来做一个CDN节点的部署,而不会布置到国外去,通过国外地址去请求国内的目标,很容易找到真实IP地址。
4.遗留文件:一些站点在搭建之初,会用一些文件测试站点,例如“phpinfo()”文件,此类文件里就有可能包含了真实的IP地址。可以利用Google搜索引擎搜索关键字“site:xxx.com inurl:phpinfo.php”,搜索站点是否有遗留文件。
5.扫描全网:借助一些工具、软件或者平台,把全世界的网络对你的网站进行访问,判断一下响应IP,通过IP地址的收集整理,把节点访问的IP地址全部收集下来,去分析哪一个可能是真实IP地址。因为不可能每个地区都有CDN节点,所有真实IP一定在收集的里面
6.黑暗引擎搜索特定文件:fofa、shodan、zoomeye、censys、谛听等,会有搜索特定关键词,更加的实时,可以搜索指定文件;这里的特定文件,如:站点的icon文件,也就是网站的图标,一般查看网页源代码可以找到,格式大致“http://www.xx.com/favicon.ico”。在shodan搜索网站icon图标的语法为:http.favicon.hash:hash值,hash是一个未知的随机数,我们可以通过shodan语法来查看一个已经被shodan收录的网站的hash值,来进一步获取到所有带有某icon的网站。
7.DNS历史记录,以量打量
通过查询网站相关的DNS记录,以前这个网站没使用CDN服务,会遗留一些服务,找到没有设置CDN时的历史记录,找到IP地址,有可能就是真实IP地址。
“以量打量”就是常说的ddos攻击或者说是流量耗尽攻击,在网上开CDN的时候,都会分地区流量,就比如这个节点有100M流量,当这流量用完后,用户再访问就会访问网站真实的ip地址。
有些网站可能一开始没有部署CDN,是后来才部署的CDN,那么在dns历史记录里就有可能存在解析为真实IP的记录。
工具:
子域名在线查询:https://chaziyu.com/
全球ping扫工具:全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
DNS查询:域名 DNS 查询 - 锤子在线工具、http://www.17ce.com/
黑暗搜索引擎:Shodan Search Engine、https://www.zoomeye.org、https://fofa.info
第三方接口查询真实ip(也有误报):微步在线 、get-site-ip
全网扫描工具:fackcdn、w8fuckcdn、zmap ,结果需要自己判断,有误报率
绕过CDN,使用真实ip访问网站
找到CND真实IP地址后,更改本地HOSTS解析指向文件
此时再次访问网站,便是使用真实IP访问网站。
08.信息收集之架构、搭建、WAF
思路:
站点搭建分析
1.搭建习惯-目录型站点
简单的理解就是主站上面存在其他的cms程序
例如:
D:\Microsoft\AndroidNDK64\android-ndk-r16b\build\core\toolchains\aarch64-linux-android-4.9和
D:\Microsoft\AndroidNDK64\android-ndk-r16b\build\core\toolchains\mips64el-linux-android-clang
这两者只是目录路径不同;但是两个网站使用的是两套程序,一旦有一个站点出现漏洞,就同时可以攻击另一个站点,就相当于有了两套漏洞两个方案。我们可以通过目录扫描来获取相关信息。
2.搭建习惯-端口类站点
一个服务器(网址)的不同端口,对应了不同的网站(站点)。这种情况只要搞定一个基本就可以渗透。例如web.0516jz.com(默认访问80端口)和web.0516jz.com:8080不是同一个站点。8080端口出现漏洞,80端口也会受到影响。
3.搭建习惯-子域名站点
通过子域名将两个网站分开
可能两者是共用一个ip,也可能不是,现在的主流网站都是采用的这种模式,且子域名和网站之间很有可能是不在同一台的服务器上面。可以ping测试两个网站服务器ip
4.搭建习惯-类似域名站点
有些公司由于业务的发展将原来的域名弃用,选择了其他的域名。但是我们访问他的旧的域名还是能够访问,有的是二级域名的更换而有的是顶级域名的更换。可以通过他的旧的域名找到一些突破口。
如:遇到一个网站,还可以爆破相关域名后缀,比如.com、.cn、.edu.cn等;或者爆破中间域名 如www.xiaoyang.com;www.xiaoyang1.com;www.xiaoyang4.com.....
5.搭建习惯-旁注,c段站点
旁注:同服务器不同站点,但是你要攻击的是A网站由于各种原因不能成功。就通过测试B网站进入服务器然后再攻击A网站最终实现目的。
C段:同网段不同服务器不同站点,通过扫描发现与你渗透测试的是同一个网段最终拿下服务器,然后通过内网渗透的方式拿下目标服务器
旁注查询在线工具:https://www.webscan.cc/
6.搭建习惯-搭建软件特征站点
有的网站是借助于第三方的集成搭建工具实现。例如:PHPstudy、宝塔、wmap、lnmap等环境。
这样的集成环境搭建的危害有 默认账户密码、泄露了详细的版本信息(可以通过版本找到相关漏洞)等。
如:phpstudy搭建了之后在默认的站点安装了phpmyadmin有的网站没有做安全性直接可以通过用户名:root密码:root 登录进入
可以尝试收集一些各类软件搭建网站的特征信息,如nginx搭建的网站 抓包server字段值为nginx
(用中间件搭建,在网站源代码中显示的服务器信息比较少,用搭建平台,显示的服务器信息比较多。)
shodan可以搜索这些特征:https://www.shodan.io/
还可以搜waf:字段为x-powered-waf:waf-
WAF防护分析
1.什么是wAF应用?
Web应用防护系统(称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称:WAF)。Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
2.如何快速识别WAF
(1)工具wafwoof:Linux上的kali自带,直接就可以使用
项目地址:https://codeload.github.com/EnableSecurity/wafw00f/zip/refs/heads/master
命令: wafw00f 域名/IP
缺点:判断的不是特别的准确存在误报或识别不出的情况
(2)在有些网站的请求信息当中留下了waf的相关信息
F12查看网站标头信息中的X-Powered-By字段中可能会有
(3)使用nmap指纹检测
命令:nmap --script==http-waf-fingerprintnmap --script=http-waf-detec
(4)identYwaf识别
参考地址:https://github.com/stamparm/identywaf
与wafwoof相比运行速度慢,比较稳定推荐还是使用这一款工具。
(5)sqlmap识别
命令:sqlmap.py -u “http://www.xxx.com” --batch
3.识别WAF的意义?
对于一个网站要是使用了waf而渗透人员没有识别直接使用工具进行扫描有可能会导致waf将你的ip地址拉入黑名单而不能访问。而识别waf在于有针对性行的绕过各个厂商的waf可能存在着不同的绕过思路。
09.信息收集之APP和其他资产
若WEB无法取得进展或无WEB的情况下,我们需要借助app或其他资产进行信息收集,从而开展后续渗透
APP提取及抓包及后续反编译
(1)利用反编译工具提取URL信息
工具:漏了个大洞:【APK反编译】漏了个大洞获取资源文件+APK文件的获取、反编译使用方法、
(2)利用burp历史抓包获取更多URL
在模拟器中安装CA证书。调整代理监听地址端口。从“HTTP history”信息查看数据包
某IP无WEB框架下的第三方测试
思路:端口乱扫、接口乱扫、接口部分乱扫
(1)nmap扫描–相对全面但时间较慢
详情见工具手册或上网查阅Nmap扫描手册
(2)黑暗引擎扫描(shodan、ZoomEye、fofa)
强大的引擎,开放的端口、端口可能对应的服务都能检测出来,三个都试试
也可以写个脚本同时搜索并导出结果
(3)资产信息、旁注、类似域名、子域名、DNS查询等进行搜索和查端口。
相关工具:微步在线、站长IP查询工具、DNS查询:kali里的dig命令和nslookup命令 、推荐工具
整理
收集到的信息如CMS、IP地址、域名、子域、数据库等等,均进行记录然后根据相应的版本进行漏洞测试
10.信息收集之资产监控
Github监控
收集整理最新exp或poc、发现相关测试目标的资产
#需要修改监控内容、注册github账号、注册Server酱账号(用于微信推送)
# Title: wechat push CVE-2020
# Date: 2020-5-9
# Exploit Author: weixiao9188
# Version: 4.0
# Tested on: Linux,windows
# coding:UTF-8
import requests
import json
import time
import os
import pandas as pd
time_sleep = 20 #每隔20秒爬取一次
while(True):
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400"}
#判断文件是否存在
datas = []
response1=None
response2=None
if os.path.exists("olddata.csv"):
#如果文件存在则每次爬取10个
df = pd.read_csv("olddata.csv", header=None)
datas = df.where(df.notnull(),None).values.tolist()#将提取出来的数据中的nan转化为None
response1 = requests.get(url="https://api.github.com/search/repositories?q=CVE-2020&sort=updated&per_page=10",
headers=headers)
response2 = requests.get(url="https://api.github.com/search/repositories?q=RCE&ssort=updated&per_page=10",
headers=headers)
else:
#不存在爬取全部
datas = []
response1 = requests.get(url="https://api.github.com/search/repositories?q=CVE-2020&sort=updated&order=desc",headers=headers)
response2 = requests.get(url="https://api.github.com/search/repositories?q=RCE&ssort=updated&order=desc",headers=headers)
data1 = json.loads(response1.text)
data2 = json.loads(response2.text)
for j in [data1["items"],data2["items"]]:
for i in j:
s = {"name":i['name'],"html":i['html_url'],"description":i['description']}
s1 =[i['name'],i['html_url'],i['description']]
if s1 not in datas:
#print(s1)
#print(datas)
params = {
"text":s["name"],
"desp":" 链接:"+str(s["html"])+"\n简介"+str(s["description"])
}
print("当前推送为"+str(s)+"\n")
print(params)
requests.get("https://sc.ftqq.com/XXXX.send",params=params,timeout=10)
#time.sleep(1)#以防推送太猛
print("推送完成!")
datas.append(s1)
else:
pass
#print("数据已处在!")
pd.DataFrame(datas).to_csv("olddata.csv",header=None,index=None)
time.sleep(time_sleep)
常见的子域名收集方法(补充)
域名收集及枚举工具-提莫(teemo)项目地址:https://github.com/bit4woo/teemo
Layer子域名挖掘机
查询子域名和证书:https://crt.sh
IP定位:www.chaipip.com
dns历史解析记录查询:https://dnsdb.io
11.漏洞基本知识
- 高危漏洞:直接影响到网站权限,获得数据或者网站很敏感的东西。如:SQL注入、文件上传、文件包含、代码执行、未授权访问、命令执行
- 中危漏洞:反序列化、逻辑安全
- 低危漏洞:主要是信息泄露,如网站源码泄露这类的,XSS跨站、目录遍历、文件读取
- 漏洞的等级决定漏洞的重要程度,高危漏洞是重点;
pikachu靶场搭建:https://github.com/zhuifengshaonianhanlu/pikachu