赞
踩
在安全测试中,信息收集是非常重要的一个环节,此环节的信息将影响到后续的成功几率,掌握信息的多少将决定发现漏洞机会大小,换言之决定着是否能完成目标的测试任务。
直接拿网站识别
1、搭建习惯-目录型站点
通过目录层级将两个网站分开。原则上是一个网站,但是区别在于目录下的差异。
但是两个网站使用的是两套程序,一个网站出现问题,另一个网站也会遭殃,就相当于有了两套漏洞两个方案。
我们可以通过目录扫描来获取相关信息。
2、搭建习惯-端口类站点
通过不同的端口将两个网站分开,一个网站出了问题,另一个网站也会出现问题;
查找方式:可以通过网络搜索或者通过端口扫描进行端口查找。
3、搭建习惯-子域名站点
通过子域名将两个网站分开(ip有可能在一起,有可能不在一起),就是两个网站可能不在同一个服务器上;
可以通过robots.txt来查看搭建网站的软件。
goodlift-www.bbs-子域名两套CMS
主站使用的
分站使用的
ping出来的IP是一样的,在同一个服务器上
也有可能不在一起,但是可能在同一网段,也有可能不同网段;
4、搭建习惯-类似域名站点
通过后缀寻找类似站点;
通过中间的域名去找类似域名;
5、搭建习惯-旁注、C段站点
(1)旁注
①概念
同服务器不同站点,多个网站放在同一个服务器上面;可以通过旁注查询站点进行查询;
旁注是一种入侵方法,在字面上解释就是-“从旁注入”,利用同一主机上面不同网站的漏洞得到webshell,从而利用主机上的程序或者是服务所暴露的用户所在的物理路径进行入侵。
②例如
ip:192.168.1.2
网站:www.a.com
www.b.com
www.c.com
③前提:多个站点服务器。
C段:同网段不同服务器不同站点,多个网站
(2)C段
①概念
同网段不同服务器不同站点
②例如
网站ip地址1.1.1.1我们无+法突破我们可以尝试C段入侵突破,1.1.1.1的C段是1.1.1.1~255。
6、搭建习惯-搭建软件特征站点
搭建软件:宝塔、lnmap等软件。
注:用中间件搭建,在网站源代码中显示的服务器信息比较少,用搭建平台,显示的服务器信息比较多。
意义:有时候会有默认的密码或者默认的设置,从而进行攻击。
1、什么是WAF应用?
Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
2、如何快速识别WAF?
(1)软件:wafw00f(准确度不是百分百,正在完善)
命令: wafw00f 域名/IP
(2)通过网站返回的数据包查看WAF。
3、识别WAF对于安全测试的意义?
(1)可以进行WAF绕过
(2)不能用扫描工具直接扫,网站防护可能会在扫的时候直接防护,从而打不开网站。如果被防护,可以通过代理而更换IP。
在安全测试中,若WEB无法取得进展或无WEB的情况下,我们需要借助APP或其他资产在进行信息收集,从而开展后续渗透,那么其中的信息收集尤为重要。
使用apkanalyser进行软件提取。
用漏了个大洞工具进行
点开result,然后找到反编译的那个APP,里面的文件都是需要一些java代码基础的才能看懂,这里就不去过多的解释;
这些是从apk中提取出来的url地址,可以通过这几种网站进行安全测试;
使用burp配合手游模拟器,进行抓包,之后查看历史流量,从历史流量中查找信息。
打开burp,修改一下逍遥模拟器的代理,然后就可以进行抓包;
然后就可以抓到包了
根据url文件和抓包可以获得更多地址,有助于安全测试;
1、APP提取及抓包后续配合
某APK一键提取反编译
利用burp历史抓更多URL 某IP无WEB框架下的第三方测试
2、某IP无WEB框架下的第三方测试(45.33.42.112)
(1)思路:
各种端口一顿乱扫
各种接口一顿乱扫
接口部分一顿测试
(2)实践
第一步:使用nmap -sV 45.33.42.112命令和黑暗搜索引擎(shodan、fofa、钟馗之眼)进行端口扫描;
第二步:使用多个工具或site:网址命令在百度搜索进行子域名查询;
第三步:在网站内部进行拥有其他功能的网站域名查询;
第四步:将搜到的子域名进行ip确定;
第五步:百度、Google搜索品牌名字,获得有用信息,比如类似域名等;
第六步:对所搜到信息或者所搜到的网站重复上面的步骤,直到搜索到没有信息为止;
第七步:对扫描到的信息进行检查整理,保留有用信息;
网站:caredaily.com
IP:121.40.216.101
开放协议:openSSH
数据库:MongoDB
注:在阿里云服务器上的有些网站打不开的原因可能是因为有防御检测,可以选择挂代理然后进行打开。
第八步:使用站长工具备案查询进行网站备案信息查询,查询该备案下面的其他网站和信息;
第九步:将搜到的数据库、中间件等信息进行检查,看是否有漏洞;
注:如果有多个网站都打不开需要确定一下自己的ip是否被封了,是否需要进行挂代理换ip;
GitHub是搞计算机使用较多的平台,有很多项目,我们监控他可以:
便于收集整理最新exp或poc(POC全称是Proof of Concept,中文译作概念验证。它是专门为了验证漏洞是否真的存在的脚本。而EXP全称是Exploit,中文译作漏洞利用程序。它是对POC验证结果的一种漏洞利用
便于收集整理最新exp或poc
便于发现相关测试目标的资产
1. 通过DNS解析记录
看域名上曾经有哪些东西被解析过。
2.通过HTTPS证书日志搜集
通过证书也可以查到域名信息;
3.通过搜索引擎
比如谷歌、百度这种正经点的搜索网站,或者使用fofa、shodan、zoomeye等这些黑暗引擎来查询一些信息;
4.枚举
就是采用暴力破解,关键是字典、速度—多线程、dns服务器选择;
5.利用漏洞
不常使用,讲解较少;
6.从主站爬取
在一些网站的下面会有一些导航,这个导航可能会把一些网站的子域名导航出来;
7.whois查询和关联查询
8.IP反查域名
枚举爆破或解析子域名对应
便于发现管理员相关的注册信息
1、黑暗引擎:fofa,shodan,zoomeye
2、黑暗引擎使用方法
(1)网址搜索;
(2)进行筛选,确定地区等;
(3)确定中间件;
注:502错误一般都是防火墙
(4)其他
通过公司微信公众号查到小程序之类的进行测试
通过社工进入公司内部群
1、监控最新的EXP发布及其他
# Title: wechat push CVE-2020 # Date: 2020-5-9 # Exploit Author: weixiao9188 # Version: 4.0 # Tested on: Linux,windows # cd /root/sh/git/ && nohup python3 /root/sh/git/git.py & # coding:UTF-8 import requests import json import time import os import pandas as pd time_sleep = 60 #每隔20秒爬取一次 while(True): headers1 = { "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 requests.packages.urllib3.disable_warnings() response1 = requests.get(url="https://api.github.com/search/repositories?q=CVE-2020&sort=updated&per_page=10",headers=headers1,verify=False) response2 = requests.get(url="https://api.github.com/search/repositories?q=RCE&ssort=updated&per_page=10",headers=headers1,verify=False) else: #不存在爬取全部 datas = [] requests.packages.urllib3.disable_warnings() response1 = requests.get(url="https://api.github.com/search/repositories?q=CVE-2020&sort=updated&order=desc",headers=headers1,verify=False) response2 = requests.get(url="https://api.github.com/search/repositories?q=RCE&ssort=updated&order=desc",headers=headers1,verify=False) 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)
2、黑暗引擎实现域名端口等收集
FOFA搜索
shodan搜索
ZoomEye(钟馗之眼)搜索
3、全自动域名收集枚举优秀脚本使用
4、SRC目标中信息收集全覆盖
补天专属src上简易测试
5、利用其他第三方接口获取更多信息
Dnsdb
SecurityTrails
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。