1.主动信息收集
直接访问目标对其进行工具扫描,有网路流量经过目标服务器。容易留下痕迹被追溯。
被动信息搜集。
基于公开的渠道,搜索引擎等,再不与目标系统直接交互的情况下获取信息linux命令详解词典,而且尽量避开留下痕迹。
2.域名信息收集
whois查询
1.通过在线网站查询,如站长之家,阿里云等
2.通过kali自带的whois查询,命令行格式为whoisurl
备案信息查询
网站备案是按照国家法律法规规定,须要网站的所有者向国家有关部门申请的备案,这是国家信息产业部对网站的一种管理,为了避免在网上从事非法的网站经营活动的发生。主要针对国外网站,倘若网站搭建在其他国家,则不须要进行备案。
子域名搜索
googlehacking常用句型_bmz12138。的博客-CSDN博客参考我之前的博客
googlehacking:通过微软搜索句型site:查找网站根域名带有site:数组的网站获取子域名
通过fofa搜索句型domain=“”查找根域名带有此数组的站点
钟馗之眼搜索句型site:查找根域名带有此数组的站点
shodan搜索句型hostname:查找根域名带有此数组的站点
#index360搜索句型domain:””查找根域名带有此数组的站点
一个在线子域名查询站点
更多的句型可以上网查找。
3.旁注,C段,IP反查域名
旁注:同一个服务器下不同站点
C段:同一网关不同服务器下的不同站点
IP反查:借助IP获取服务器解析域名
可以使用nmap,或则在线网站
4.端口侦测
使用工具一般会在目标网站留下痕迹,最好使用在线网站扫描端口
在线网站端口扫描-站长工具
工具nmap、Masscan
常见端口及其说明
数据库默认端口:mysql3306,oracle1521,mssql1433,mongoDB27017,redis6379
,postgresql5432等
远程联接默认端口:
SSH(SecureShell):22Telnet:23FTP(FileTransferProtocol):21SFTP(SSHFileTransferProtocol):22HTTP(HypertextTransferProtocol):80HTTPS(HTTPSecure):443RDP(RemoteDesktopProtocol):3389VNC(VirtualNetworkComputing):5900SNMP(SimpleNetworkManagementProtocol):161SMTP(SimpleMailTransferProtocol):25
文件共享服务默认端口:
SMB/CIFS(ServerMessageBlock/CommonInternetFileSystem):445NFS(NetworkFileSystem):2049FTP(FileTransferProtocol):21SFTP(SSHFileTransferProtocol):22WebDAV(WebDistributedAuthoringandVersioning):80/443AFP(AppleFilingProtocol):548SCP(SecureCopy):22TFTP(TrivialFileTransferProtocol):69
SFTP(SSHFileTransferProtocol)和FTP(FileTransferProtocol)都是用于文件传输的合同,但它们之间有以下几个主要区别:
安全性:SFTP基于SSH合同,所有的数据传输都是经过加密的,可以在网路上传输中保护数据的安全性。而FTP合同在传输数据时不加密,容易被黑客盗取和篡改。
端口:FTP合同默认使用端口21进行传输,而SFTP合同默认使用端口22进行传输。
支持度:SFTP合同一般被觉得是更好的选择,由于它可以在绝大多数情况下兼容FTP合同。并且,个别FTP顾客端或服务器可能不支持SFTP合同。
功能:SFTP合同支持文件和目录的重命名,复制和删掉等中级功能。FTP合同须要使用扩充命令能够实现这种功能。
Web应用服务默认端口:
HTTP(HypertextTransferProtocol):80HTTPS(HTTPSecure):443Tomcat(JavaWeb应用服务器):8080JBoss(JavaWeb应用服务器):8080Node.js(JavaScript运行环境):3000Nginx(高性能Web服务器):80/443Apache(开源Web服务器):80/443IIS(InternetInformationServices):80/443Django(PythonWeb应用框架):8000RubyonRails(RubyWeb应用框架):3000
短信服务端口:
SMTP(SimpleMailTransferProtocol):用于发送短信的合同,一般使用TCP合同的25端口。
POP3(PostOfficeProtocolversion3):用于接收短信的合同,一般使用TCP合同的110端口。
IMAP(InternetMessageAccessProtocol):也是用于接收短信的合同,但功能更强悍,可以管理服务器上的电邮,一般使用TCP合同的143端口。
SMTPS:SMTP的安全版本,使用SSL或TLS加密传输电邮,一般使用TCP合同的465端口。
POP3S:POP3的安全版本,使用SSL或TLS加密传输电邮,一般使用TCP合同的995端口。
IMAPS:IMAP的安全版本,使用SSL或TLS加密传输电邮,一般使用TCP合同的993端口。
网路常见合同端口:
DHCP(DynamicHostConfigurationProtocol):用于手动分配IP地址的合同,一般使用UDP合同的67和68端口。
DNS(DomainNameSystem):用于将域名转换为IP地址的合同,一般使用TCP/UDP合同的53端口。
SNMP(SimpleNetworkManagementProtocol):用于管理和监控网路设备的合同,一般使用UDP合同的161和162端口。其中,161端口用于管理站点向代理发送恳求,162端口用于代理向管理站点发送通知。
须要注意的是,这种合同和端口的具体应用和配置可能因不同的场景和网路环境而有所不同,具体应按照实际情况进行配置和使用。
5.cms指纹辨识
CMS指纹辨识是一种用于判定目标网站所使用的CMS系统和版本的技术,它通过对目标网站的一些特点进行剖析和比对,来辨识出目标网站所使用的CMS系统和版本信息。
CMS系统是指网站内容管理系统,它可以帮助网站管理员进行网站内容的发布、修改和管理。常见的CMS系统包括WordPress、Joomla、Drupal、Typecho、DedeCMS、Discuz!、Ecshop等。不同的CMS系统有不同的特点和特性,例如目录结构、文件命名、页面结构等,这种特点可以拿来进行指纹辨识。
CMS指纹辨识是一项常用的渗透测试技术,它可以帮助功击者快速判定目标网站所使用的CMS系统和版本信息,因而有针对性地进行漏洞借助和功击。同时,CMS指纹辨识也可以用于网站管理员进行安全性评估和漏洞扫描,帮助其及时发觉和修补网站安全漏洞。
以下是KaliLinux中常用的几个CMS指纹辨识工具:
WhatWeb:一个快速的网站指纹辨识工具,支持辨识多种CMS系统和Web应用框架,包括WordPress、Joomla、Drupal、Magento等。可以使用命令whatweb进行指纹辨识。
Wappalyzer:一个基于浏览器扩充的指纹辨识工具,支持辨识多种CMS系统、Web应用框架和JavaScript库。可以在浏览器中安装Wappalyzer扩充,并访问目标网站进行指纹辨识。
CMSeek:一个基于Python编撰的CMS指纹辨识和漏洞扫描工具,支持辨识多种CMS系统和Web应用框架,包括WordPress、Joomla、Drupal、Blogger等。可以使用命令cmseek-u进行指纹辨识。
还可以使用在线网站辨识。
查询到cms以后,就可以在网上搜索该cms的漏洞,进而进行下一步渗透。
6.CDN
CDN(ContentDeliveryNetwork)是一种分布式网路构架,它可以将网站内容和资源缓存到全球各地的节点上,进而提升网站的访问速率和稳定性。对于渗透测试和漏洞扫描等安全测试活动而言,CDN辨识是一项十分重要的技术。由于CDN的存在会影响到渗透测试和漏洞扫描的结果和疗效。
下边介绍一些CDN辨识的技巧和方法:
DNS记录剖析:通过剖析目标网站的DNS记录,可以获取到目标网站使用的CDN服务商和节点IP地址。这可以使用一些工具进行手动化扫描,例如Fierce、DNSMap等。
HTTP响应头剖析:通过剖析目标网站的HTTP响应头,可以获取到目标网站使用的CDN服务商和节点信息。常见的CDN服务商的HTTP响应头信息可以参考网路资料进行查询和剖析。
指纹辨识:通过对目标网站的特点进行指纹辨识,可以判定目标网站是否使用了CDN。这可以使用一些工具进行手动化扫描,例如Wappalyzer、WhatWeb等。
端口扫描:通过对目标网站的端口进行扫描,可以判定目标网站是否使用了CDN。一些CDN服务商使用的端口,例如Cloudflare使用的端口是80、443、2052、2082、2083、2086、2087、2095、2096等。
假如目标网站使用了CDN,可以尝试绕开CDN进行渗透测试和漏洞扫描。绕开CDN的方式包括但不限于:
直接使用目标网站的IP地址进行渗透测试和漏洞扫描。
使用一些工具进行CDN绕开,例如CloudFail、HatCloud等。
须要注意的是,渗透测试和漏洞扫描等安全测试活动应当在合法、合规和道德的前提下进行,慎重使用。
nslookup:在windows或则linux中的终端命令行界面输入nslookup步入域名解析操作,如出现多个解析结果则存在CDN,只有一个结果则不存在CDN。
CDN绕开,查找真实ip
1.借助子域名或主域:因为成本问题,可能只有域名的主站有CDN,而其他子域名没有CDN,且子站和主站搭载在同一台服务器上或同一网关服务器上则可以通过子站来找到真实ip。也有一些是只有www有CDN而主域是没有CDN。
2.通过短信服务系统
查看电邮头信息:在短信顾客端中,可以查看电邮头信息,以获取电邮发送者的IP地址。具体操作步骤如下:
通过查找电邮头信息或电邮服务器日志来查找电邮发送者的真实IP地址,主要是借助了SMTP合同的工作原理。
3.美国访问
有些CDN只对国外恳求生效,从美国访问就可能不提供CDN节点服务。
4.文件泄漏真实ip
phpinfo文件曝露网站的信息,包括网站的真实IP
SERVER_NAME数组中包含服务器IP地址
5.历史域名解析
可能目标之前没有使用CDNlinux获取渗透文件,所以可能会存在使用CDN前的记录。
可以通过搜索引擎搜索目标的历史快照。
还可以使用DNS历史记录查询工具,查询目标域名历史的DNS解析记录。DNS历史记录可以包含过去的DNS解析信息,包括域名解析到的IP地址等。通过查找历史DNS解析记录,可以尝试获取目标使用CDN前的真实IP地址。
6.借助工具。
还有好多方式linux 删除文件夹,可以上网查找
7.目录/文件搜集
在渗透测试中,侦测Web目录结构和隐藏的敏感文件是一个必不可少的环节linux获取渗透文件,从中可以获取网站的后台管理、文件上传等重要页面,甚至可能扫描出网站的源代码。
目录扫描工具有特别多种:
Dirb:一个常用的目录扫描工具,使用字典文件进行扫描。在KaliLinux中,可以通过命令“dirb”来使用。
Dirbuster:一个基于Java的目录扫描工具,支持多线程扫描、代理服务器等功能。在KaliLinux中,可以通过命令“dirbuster”来使用。
Gobuster:一个用Go语言编撰的目录扫描工具,支持多线程扫描和自定义字典。在KaliLinux中,可以通过命令“gobuster”来使用。
Wfuzz:一个强悍的Web应用程序扫描工具,支持目录扫描、参数爆破、弱口令扫描等功能。在KaliLinux中,可以通过命令“wfuzz”来使用。
Nmap:一个多功能的网路扫描工具,可以拿来扫描目标主机的开放端口和运行的服务。Nmap还提供了一些NSE脚本,可以用于执行目录扫描。在KaliLinux中,可以通过命令“nmap”来使用。
Nikto:一个常用的Web服务器扫描工具,可以监测服务器的潜在漏洞和安全问题。在KaliLinux中,可以通过命令“nikto”来使用。
御剑后台扫描工具
8.辨识操作系统
辨识操作系统常见方式:
端口扫描:使用端口扫描工具(如Nmap)扫描目标主机的开放端口。按照常见端口和服务的对应关系,可以猜测目标主机所运行的操作系统。
TTL值:使用ping命令发送ICMP包到目标主机,查看返回的TTL值。不同的操作系统设置的TTL值可能不同,通过比较TTL值可以推断目标主机所运行的操作系统。
Banner信息:在使用端口扫描工具扫描目标主机的开放端口时,可以查看端口的Banner信息,通过比对不同操作系统的Banner信息可以推断目标主机所运行的操作系统。
应用程序:剖析目标主机上运行的应用程序,不同操作系统上常用的应用程序也可能不同,因而推断目标主机所运行的操作系统。
网路构架:在进行渗透测试时,可能会通过渗透到目标主机以后,获取目标网路的拓扑结构信息,进而推论目标主机所处的操作系统。
参考文章
渗透测试之信息搜集_渗透测试信息搜集_游子无寒衣的博客-CSDN博客
渗透测试之信息搜集篇_渗透测试信息搜集_未完成的歌~的博客-CSDN博客