7. 渗透--信息收集(一)
完成dns、搜索引擎google、ssl、备案号、暴力破解、app反编译、微信公众号、jsfinder获取二级域名信息
whois: 标准的互联网协议,经常用来收集目标域名相关信息,网络注册信息,注册域名、ip地址等信息
可根据以下方法进行子域名探测:
[1] dns域传送漏洞
在kali下 使用 dnsenum 参数 域名 命令,来收集一个域的信息。
主要参数:
-h 查看工具使用帮助
-dnsserver <server> 指定域名服务器
-enum 快捷键 相当于"--threads 5 -s 15 -w" (启动5线程,谷歌搜索15条子域名)
-f dnstxt 指定字典文件
-w (--whois) 在一个c段网络地址范围 提供whois查询
--noreverse 跳过反向查询操作
[2] 备案号查询
网站备案查询地址: https://icpchinazcom/
http://icpbugscanercom/
根据域名在相关网站上找到备案号信息,在根据备案号信息查找到相关域名信息。
[3] ssl证书查询
通过查询SSL证书,获取的域名存活率很高。
查询网址: https://mysslcom/sslhtml 和 https://wwwchinasslnet/ssltools/ssl-checkerhtml
[4]google 搜索c段
旁站:旁站是和目标网站在同一台服务器上的其它的网站。
C段:C段是和目标服务器ip处在同一个C段的其它服务器。
使用网站webscancc查询旁站c段。
1参考googleHack 用法 :
2用DotNetScan工具
工具地址:VStart50\VStart50\tools\漏洞利用\IISPutScanner增强版
[5] app提取
反编译APP可进行提取相关IP地址等操作。
[6] 微信公众号
[7] JsFinder 查找子域名
将JsFinderpy复制到kali系统文件夹下,进入该文件夹使用命令 进行查询。
-d:表示深度爬取
[8] 字典枚举
字典枚举法是一种传统查找子域名的技术,这类工具有 DNSReconcile、Layer子域名挖掘机、DirBuster等。
FOFA是网络空间安全搜索引擎,收录的是设备而不是网页。能够探索全球互联网资产信息。
网站是fofaso
搜索语法为:
ip=“1111” 搜索与此ip相关的网站
port="8009" 查找开发了8009端口的服务器
domain="qqcom" 搜索跟域名带有qqcom的网站
PS:指纹识别:其核心原理是通过正则表达式匹配特征码或匹配文件的md5值等特殊信息,进而识别web应用程序的名称和版本,收集信息。
常见指纹检测的对象
1、CMS信息:比如大汉CMS、织梦、帝国CMS、phpcms、ecshop等;
2、前端技术:比如HTML5、jquery、bootstrap、pure、ace等;
3、Web服务器:比如Apache、lighttpd, Nginx, IIS等;
4、应用服务器:比如Tomcat、Jboss、weblogic、websphere等;
5、开发语言:比如PHP、Java、Ruby、Python、C#等;
6、操作系统信息:比如linux、win2k8、win7、kali、centos等;
7、CDN信息:是否使用CDN,如cloudflare、360cdn、365cyd、yunjiasu等;
8、WAF信息:是否使用waf,如Topsec、Jiasule、Yundun等;
9、IP及域名信息:IP和域名注册信息、服务商信息等;
10、端口信息:有些软件或平台还会探测服务器开放的常见端口。
第一步信息收集(敏感目录文件、whois信息、旁注、端口开放、iis几、)
第二部漏洞挖掘(web应用指纹、漏洞有那些xss、CSRF、XSIO、SQL、任何文件读取、上传、之类的)
第三步漏洞利用(目的思考、利用漏洞拿到相关权限、然后提权)
再之后就是提权拿服务器、然后创建隐藏账户、然后擦痕迹、
什么是IP地址?
随着电脑技术的逐步普及和因特网技术的迅猛发展,学习因特网、利用因特网已不再是那些腰缠万贯的大款和戴者深度眼睛的专业技术人员的专利,它已作为二十一世纪人类的一种新的生活方式而逐步深入到寻常百姓家。谈到因特网,IP地址就不能不提,因为无论是从学习还是使用因特网的角度来看,IP地址都是一个十分重要的概念,INTERNET的许多服务和特点都是通过IP地址体现出来的。
一、IP地址的概念
我们知道因特网是全世界范围内的计算机联为一体而构成的通信网络的总称。联在某个网络上的两台计算机之间在相互通信时,在它们所传送的数据包里都会含有某些附加信息,这些附加信息就是发送数据的计算机的地址和接受数据的计算机的地址。象这样,人们为了通信的方便给每一台计算机都事先分配一个类似我们日常生活中的电话号码一样的标识地址,该标识地址就是我们今天所要介绍的IP地址。根据TCP/IP协议规定,IP地址是由32位二进制数组成,而且在INTERNET范围内是唯一的。例如,某台联在因特网上的计算机的IP地址为:
11010010 01001001 10001100 00000010
很明显,这些数字对于人来说不太好记忆。人们为了方便记忆,就将组成计算机的IP地址的32位二进制分成四段,每段8位,中间用小数点隔开,然后将每八位二进制转换成十进制数,这样上述计算机的IP地址就变成了:210731402。
二、IP地址的分类
我们说过因特网是把全世界的无数个网络连接起来的一个庞大的网间网,每个网络中的计算机通过其自身的IP地址而被唯一标识的,据此我们也可以设想,在INTERNET上这个庞大的网间网中,每个网络也有自己的标识符。这与我们日常生活中的电话号码很相像,例如有一个电话号码为0515163,这个号码中的前四位表示该电话是属于哪个地区的,后面的数字表示该地区的某个电话号码。与上面的例子类似,我们把计算机的IP地址也分成两部分,分别为网络标识和主机标识。同一个物理网络上的所有主机都用同一个网络标识,网络上的一个主机(包括网络上工作站、服务器和路由器等)都有一个主机标识与其对应IP地址的4个字节划分为2个部分,一部分用以标明具体的网络段,即网络标识;另一部分用以标明具体的节点,即主机标识,也就是说某个网络中的特定的计算机号码。例如,盐城市信息网络中心的服务器的IP地址为210731402,对于该IP地址,我们可以把它分成网络标识和主机标识两部分,这样上述的IP地址就可以写成:
网络标识:210731400
主机标识: 2
合起来写:210731402
由于网络中包含的计算机有可能不一样多,有的网络可能含有较多的计算机,也有的网络包含较少的计算机,于是人们按照网络规模的大小,把32位地址信息设成三种定位的划分方式,这三种划分方法分别对应于A类、B类、C类IP地址。
1.A类IP地址
一个A类IP地址是指,在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话,A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”。A类IP地址中网络的标识长度为7位,主机标识的长度为24位,A类网络地址数量较少,可以用于主机数达1600多万台的大型网络。
2.B类IP地址
一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码,B类IP地址就由2字节的网络地址和2字节主机地址组成,网络地址的最高位必须是“10”。B类IP地址中网络的标识长度为14位,主机标识的长度为16位,B类网络地址适用于中等规模规模的网络,每个网络所能容纳的计算机数为6万多台。
3.C类IP地址
一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。如果用二进制表示IP地址的话,C类IP地址就由3字节的网络地址和1字节主机地址组成,网络地址的最高位必须是“110”。C类IP地址中网络的标识长度为21位,主机标识的长度为8位,C类网络地址数量较多,适用于小规模的局域网络,每个网络最多只能包含254台计算机。
除了上面三种类型的IP地址外,还有几种特殊类型的IP地址,TCP/IP协议规定,凡IP地址中的第一个字节以“lll0”开始的地址都叫多点广播地址。因此,任何第一个字节大于223小于240的IP地址是多点广播地址;IP地址中的每一个字节都为0的地址(“0000”)对应于当前主机;IP地址中的每一个字节都为1的IP地址(“255.255.255.255”)是当前子网的广播地址;IP地址中凡是以“llll0”的地址都留着将来作为特殊用途使用;IP地址中不能以十进制“127”作为开头,27.1.1.1用于回路测试,同时网络ID的第一个6位组也不能全置为“0”,全“0”表示本地网络。
三、IP的寻址规则
1网络寻址规则
A、 网络地址必须唯一。
B、 网络标识不能以数字127开头。在A类地址中,数字127保留给内部回送函数。
C、 网络标识的第一个字节不能为255。数字255作为广播地址。
D、 网络标识的第一个字节不能为“0”,“0”表示该地址是本地主机,不能传送。
2主机寻址规则
A、主机标识在同一网络内必须是唯一的。
B、主机标识的各个位不能都为“1”,如果所有位都为“1”,则该机地址是广播地址,而非主机的地址。
C、主机标识的各个位不能都为“0”,如果各个位都为“0”,则表示“只有这个网络”,而这个网络上没有任何主机。
四、IP子网掩码概述
1子网掩码的概念
子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
2确定子网掩码数
用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。在定义子网掩码前,必须弄清楚本来使用的子网数和主机数目。
定义子网掩码的步骤为:
A、确定哪些组地址归我们使用。比如我们申请到的网络号为 “21073ab”,该网络地址为c类IP地址,网络标识为“21073”,主机标识为“ab”。
B、根据我们现在所需的子网数以及将来可能扩充到的子网数,用宿主机的一些位来定义子网掩码。比如我们现在需要12个子网,将来可能需要16个。用第三个字节的前四位确定子网掩码。前四位都置为“1”,即第三个字节为“11110000”,这个数我们暂且称作新的二进制子网掩码。
C、把对应初始网络的各个位都置为“1”,即前两个字节都置为“1”,第四个字节都置为“0”,则子网掩码的间断二进制形式为:“11111111111111111111000000000000”
D、把这个数转化为间断十进制形式为:“2552552400”
这个数为该网络的子网掩码。
3IP掩码的标注
A、无子网的标注法
对无子网的IP地址,可写成主机号为0的掩码。如IP地址210731405,掩码为2552552550,也可以缺省掩码,只写IP地址。
B、有子网的标注法
有子网时,一定要二者配对出现。以C类地址为例。
1IP地址中的前3个字节表示网络号,后一个字节既表明子网号,又说明主机号,还说明两个IP地址是否属于一个网段。如果属于同一网络区间,这两个地址间的信息交换就不通过路由器。如果不属同一网络区间,也就是子网号不同,两个地址的信息交换就要通过路由器进行。例如:对于IP地址为210731405的主机来说,其主机标识为00000101,对于IP地址为2107314016的主机来说它的主机标识为00010000,以上两个主机标识的前面三位全是000,说明这两个IP地址在同一个网络区域中,这两台主机在交换信息时不需要通过路由器进行1073601的主机标识为00000001,2107360252的主机标识为11111100,这两个主机标识的前面三位000与011不同,说明二者在不同的网络区域,要交换信息需要通过路由器。其子网上主机号各为1和252。
2掩码的功用是说明有子网和有几个子网,但子网数只能表示为一个范围,不能确切讲具体几个子网,掩码不说明具体子网号,有子网的掩码格式(对C类地址):
五、IP的其他事项
1一般国际互联网信息中心在分配IP地址时是按照网络来分配的,因此只有说到网络地址时才能使用A类、B类、C类的说法;
2在分配网络地址时,网络标识是固定的,而计算机标识是可以在一定范围内变化的,下面是三类网络地址的组成形式:
A类地址:73000
B类地址:16015300
C类地址:210731400
上述中的每个0均可以在0~255之间进行变化。
3因为IP地址的前三位数字已决定了一个IP地址是属于何种类型的网络,所以A类网络地址将无法再分成B类IP地址,B类IP地址也不能再分成C类IP地址。
4在谈到某一特定的计算机IP地址时不宜使用A类、B类、C类的说法,但可以说主机地址是属于哪一个A类、B类、C类网络了。
很多闲的裆疼的同行喜欢利用 IP冲突 攻击目标服务器。比如说,非同一网关C段劫持,他们利用局域网的IP冲突 (可做到突破非同网关劫持 与SB 嗅探)。你不能“快速设置域名泛解析及解决恶意泛域”,他们就把我们拿到的服务器修改成目标服务器的IP,当我们修改IP 后 计算机会判断成重新获取IP,所以直接把原来的服务器的IP顶下来的,然后绑定他们目标站的域名就达到劫持的效果了,而且看不出是劫持的 因为IP没有变。
所以管理发现网站被入侵了 会通过FTP 或者 服务器修改会主页,然后我们嗅探本机就好了。还有就是IP 和MAC 双绑定他们会修改成相对应的。这个方法他们利用最多的,无视非同网关、无视防火墙。这个问题,在局域网中经常碰到,这不能算是漏洞严格的来讲,这个也不叫“劫持”,只能说是 IP 冲突的一种……
一、那ip地址和网络上其他系统冲突是什么意思
这个简单,我们租用服务器多会获得一个IP地址,不相同。那为什么会和其他系统发生冲突呢,打个比方就是说当你服务器的ip地址和别的服务器的ip地址相同的时候就会显示“ip地址和网络上其他系统有冲突”一般这样相同的原因无非是你的局域网被病毒攻击导致地址解析失败则会出现,这种情况下数据隐私很容易泄露出去。比如在一个局域网中,19216813这个IP只有被用在一台计算机上,如果存在两台计算机或者多台计算机用这个IP,就会出现冲突。
二、了解完IP冲突的原因,那看看IP的获取情况
1、自动获取,当网络的中服务器或者是路由器开启了DHCP(动态主机配置协议,这个协议里会定义自动分配IP的地址池,比如192168100-1921681199),那么,网络中的客户机就可以通过在本地连接里面,设置为自动获得IP地址来让服务器为客户机配置一个IP,这个IP是随机的(由服务器或者是路由器从定义好的地址池里选一个没有被分配的来给你用),从而可以保证与其他使用自动获得IP的电脑中的IP地址不相同。
2、手动指定,当网络中的服务器或者是路由器没有开启DHCP功能的时候,我们要自己给客户机配置IP,当然,如果服务器开了DHCP功能,我们也一样可以手动指定的。
在Windows系统中,如果本地网络IP地址出现冲突,会出现图标提示,问题比较容易解决。但在Linux系统中,并没有提供相关的功能,如果本地网络采用静态IP地址配置,出现比较奇怪的网络连接问题,如ssh连接复位,可以考虑检测一下是否是出现了IP地址冲突问题。arping命令提供了检测地址冲突的功能。
三、Linux中如何检测IP地址冲突问题
arping命令
arping命令是用于发送arp请求到一个相邻主机的工具,arping使用arp数据包,通过ping命令检查设备上的硬件地址。能够测试一个ip地址是否是在网络上已经被使用,并能够获取更多设备信息。功能类似于ping。
IP地址冲突检测
在出问题的主机上,可以使用"arping -I ethN xxxx"命令(其中xxxx为本接口的IP地址)检测地址冲突,如果没有任何输出,则表示本IP地址无冲突。如果有冲突的话,该命令会显示冲突的IP地址使用的MAC地址。
当然,IP地址冲突并不是在任何条件下多可以实施的,造成IP冲突有以下因素、条件:必须在同一局域网(无需同网关,C段相同即可)。目标机器是否装有具有“拦截外部IP冲突”功能的防火墙。目标机器本地连接是否设置为:“自动获取IP”。(这条因素不确定)网管是否绑定 IP + MAC,如果绑定了,则还需要修改攻击机器的 IP、MAC 与目标机器完全一致。可以给本机(攻击机器)绑定多个IP备用,否则在IP冲突时,你可能无法登陆本机。
而 IP 冲突则无法转发,因为此时双方的 IP 和 MAC 都被改成了一样的,如果将数据发出去的话,会形成死循环,无法转发……关于防御方法,其实比较简单,使用带“拦截外部IP冲突”功能的防火墙即可(具体未实践,应该是有效的),Arp 攻击、IP 冲突这些网络问题都是以太网存在协议漏洞造成的,局域网是通过 IP-MAC 寻址来通讯的,只要改个 IP,就可能造成 IP 冲突上不了网……
0条评论