查看原文
其他

信息搜集系列-ASNMap介绍

无名 迪哥讲事 2023-07-11

信息搜集系列-ASNMap介绍

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

前言

主要是最近在研究信息搜集的时候遇到了ASN相关的知识点,正好发现projectdiscovery已经写了一款相关的工具,这里介绍一下它

ASNs是什么

自治系统(AS)是一个或多个IP前缀,通常由一个网络运营商运行,具有明确定义的路由策略。自治系统号(ASN)是自治系统的标识符。

许多大型公司都有自己的ASN。ASN对于侦察(信息搜集)非常有用,我们可以枚举该公司拥有的IP前缀。

ASNMap

ASNmap是一个用golang编写的工具,用于查询自治系统数据,数据来自https://api.asnmap.sh,

它返回的数据是从 https://iptoasn.com/  里面解析出来的

简单地说,ASNMap可以实现以下转换:

  • 组织(公司)名称转换为CIDR范围(可以简单认为CIDR是一种对IP地址归类的方法)

  • ASN码转换为CIDR范围

  • IP地址转换为CIDR范围

  • 域名转换为CIDR范围

具体结果可以用JSON、CSV和文本格式查看,因此很容易将输出结果输入到其他工具

前提是需要安装好golang

热后开始执行下面的安装

安装

方法1

go install github.com/projectdiscovery/asnmap/cmd/asnmap@latest

方法2

git clone https://github.com/projectdiscovery/asnmap
cd asnmap/cmd/asnmap
go build

执行:

$ ./asnmap

___ _____ __
/ _ | / __/ |/ /_ _ ___ ____
/ __ |_\ \/ / ' \/ _ / _ \
/_/ |_/___/_/|_/_/_/_/\_,_/ .__/
/_/ v0.0.1

projectdiscovery.io

Use with caution. You are responsible for your actions
Developers assume no liability and are not responsible for any misuse or damage.
[FTL] no input defined

参数选项

CLI选项分为三个部分:输入、配置和输出。

输入选项

这些选项告诉ASNMap你给它的是什么类型的数据:

-a或-asn用于查询自治系统号,如-a AS5650      
-i或-ip用于查询IP地址。例如-i 100.19.12.21    
-d或-domain用于查询域名,例如-d google.com  
-org用于查询组织(公司)名称,例如-o google    

也可以指定多个输入,无论它们是否属于同一类型。例如:

asnmap -i 1.1.1.1 -i 1.3.3.7 -org GOOGLE -d facebook.com

输出选项

-j或-json允许你以JSON格式查看数据。
-c或-csv允许你以CSV格式查看数据。 
-v 启用粗略模式                  
-silent            只输出数据    
-version显示使用的ASNMap的版本  
-v6 在CLI输出中显示IPv6 的 CIDR范围  
-o或-output指定一个文件名,将输出写入。 

示例

从ASN中获取IP范围

$ ./asnmap -silent -a AS394161

8.21.14.0/24
8.45.124.0/24
8.47.24.0/24
8.244.67.0/24
8.244.131.0/24
62.67.197.0/24
199.43.255.0/24
199.66.9.0/24
199.66.10.0/23
199.120.48.0/22
199.120.52.0/23
199.120.56.0/24
205.234.11.0/24
209.133.79.0/24
213.19.141.0/24
213.244.145.0/24

获取一个IP所属的CIDR范围

$ ./asnmap -silent -i 1.1.1.1
1.1.1.0/24

获取与某个组织(公司)相关的CIDR范围

就是获取某个公司IP网段

./asnmap -silent -org GOOGLE

8.8.4.0/24
8.8.8.0/24
8.35.200.0/21
34.3.3.0/24
34.4.4.0/24
34.96.0.0/20
34.96.32.0/19
34.96.64.0/18
34.98.64.0/18
34.98.136.0/21
34.98.144.0/21
✂️ Snipped for brevity

获取与域名相关联的CIDR范围

$ ./asnmap -silent -d facebook.com

157.240.4.0/22
157.240.8.0/21
157.240.16.0/20
157.240.32.0/19
157.240.64.0/18

获取与多个域名相关联的CIDR范围

$ ./asnmap -silent -d facebook.com,twitter.com

157.240.4.0/22
157.240.8.0/21
157.240.16.0/20
157.240.32.0/19
157.240.64.0/18
104.244.40.0/23
104.244.42.0/24

以JSON的格式输出

注意结果不光光包含CIDR的范围

$ ./asnmap -a AS394161 -silent -json | jq

{
"timestamp": "2022-09-22 23:05:26.866957 +1000 AEST",
"input": "AS394161",
"as_number": "AS394161",
"as_name": "TESLA",
"as_country": "US",
"as_range": [
"8.21.14.0/24"
]
}
{
"timestamp": "2022-09-22 23:05:26.867265 +1000 AEST",
"input": "AS394161",
"as_number": "AS394161",
"as_name": "TESLA",
"as_country": "US",
"as_range": [
"8.45.124.0/24"
]
}
{
"timestamp": "2022-09-22 23:05:26.867277 +1000 AEST",
"input": "AS394161",
"as_number": "AS394161",
"as_name": "TESLA",
"as_country": "US",
"as_range": [
"8.47.24.0/24"
]
}

以CSV的格式输出

asnmap$ ./asnmap -a AS394161 -silent -csv

timestamp|input|as_number|as_name|as_country|as_range
2022-09-22 23:22:29.881525 +1000 AEST|AS394161|AS394161|TESLA|US|8.21.14.0/24
2022-09-22 23:22:29.881842 +1000 AEST|AS394161|AS394161|TESLA|US|8.45.124.0/24
2022-09-22 23:22:29.881851 +1000 AEST|AS394161|AS394161|TESLA|US|8.47.24.0/24
2022-09-22 23:22:29.881859 +1000 AEST|AS394161|AS394161|TESLA|US|8.244.67.0/24
2022-09-22 23:22:29.881866 +1000 AEST|AS394161|AS394161|TESLA|US|8.244.131.0/24
2022-09-22 23:22:29.881875 +1000 AEST|AS394161|AS394161|TESLA|US|62.67.197.0/24
2022-09-22 23:22:29.881881 +1000 AEST|AS394161|AS394161|TESLA|US|199.43.255.0/24
2022-09-22 23:22:29.881887 +1000 AEST|AS394161|AS394161|TESLA|US|199.66.9.0/24,199.66.10.0/23
2022-09-22 23:22:29.881933 +1000 AEST|AS394161|AS394161|TESLA|US|199.120.48.0/22,199.120.52.0/23
2022-09-22 23:22:29.88196 +1000 AEST|AS394161|AS394161|TESLA|US|199.120.56.0/24
2022-09-22 23:22:29.881967 +1000 AEST|AS394161|AS394161|TESLA|US|205.234.11.0/24
2022-09-22 23:22:29.881976 +1000 AEST|AS394161|AS394161|TESLA|US|209.133.79.0/24
2022-09-22 23:22:29.881982 +1000 AEST|AS394161|AS394161|TESLA|US|213.19.141.0/24
2022-09-22 23:22:29.881988 +1000 AEST|AS394161|AS394161|TESLA|US|213.244.145.0/24
2022-09-22 23:22:29.881994 +1000 AEST|AS394161|AS394161|TESLA|US|2620:137:d000:1::/64

参考

https://github.com/projectdiscovery/asnmap


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存