专栏名称: TimelineSec
安全圈必备公众号之一!专注于最新漏洞复现!内含漏洞时间线工具靶场等干货!记录每一个漏洞,捕捉安全的每一瞬间!
目录
相关文章推荐
高分子科技  ·  天工大任元林教授团队 ... ·  16 小时前  
高分子科技  ·  浙工大徐立新/叶会见团队 AFM ... ·  昨天  
高分子科学前沿  ·  ​金泽大学程笑笑/苏州大学张伟Chem. ... ·  19 小时前  
高分子科学前沿  ·  年薪30万起!中国科大王柳教授诚聘医工交叉软 ... ·  昨天  
高分子科学前沿  ·  福州大学赖跃坤、黄剑莹教授等《AFM》:基于 ... ·  2 天前  
51好读  ›  专栏  ›  TimelineSec

工具 | 一款精确检查IP是否为CDN节点的工具CheckCdn

TimelineSec  · 公众号  ·  · 2024-10-16 18:45

正文

关注我们❤️,添加星标🌟,一起学安全!
作者:ChenDark@Timeline Sec
本文字数:3097
阅读时长:1~3mins
声明:仅供学习参考使用,请勿用作违法用途,否则后果自负

项目地址:https://github.com/YouChenJun/CheckCdn

一、工具概述

在日常的渗透测试中,往往从IP、C段入手可以发现到很多不一样的资产信息。快速筛选出真实IP并且整理为C段扫描是其中的一个攻击方式,在面对大量IP资产的时候取出CDN节点、负载均衡节点尤为重要。

本工具实现原理就是调用各大云厂商的对应CDN API,查询IP是否为该厂商的CDN节点,最后由ipdb和收集到的IP c段做数据兜底。现已支持的云厂商有

  • 火山云 [1]
  • 腾讯云 [2]
  • 阿里云 [3]
  • 百度云 [4]
  • 华为云 [5]

详细的说明见本文的 四、实现原理

二、工具使用

首次运行程序后会在该目录下创建 config.yaml 配置文件,请查看本文档的 四、实现原理 进行配置

  -config string
        配置文件夹路径 (default "config.yaml")
  -delayed float
        查询延迟时间,默认0s
  -input string
        需要检测的ip文件列表
  -output string
        不是CDN节点的ip文本列表 (default "nocdn.txt")

程序运行后会自动进行调取api检测,非CDN的ip结果内容默认在 nocdn.txt

由于部分厂商的接口短时间内频繁调取会出现拦截,请根据自己的实际情况配置 -delayed 参数

三、秘钥配置

这里的秘钥指的是云厂商的AK、SK,请根据不同厂商按照链接开启并且获取。 AK、SK获取后请保存,高权限的AKSK可以调取云平台的相关服务、请求。

下面操作部分云厂商需要开启CDN服务,其中涉及到开通需要充值一定数额才可使用。根据此教程合理配置,重置的金额可在开通后退费,并且后续不会产生CDN的费用。 ,对于配置CDN其他的功能出现的扣费问题,本人和此教程不承担任何责任。

下列操作在创建秘钥的时候会提示是否创建子账号,建议使用不创建子账号,使用主账号的秘钥。若云账号上有大量的服务器、资源等,建议创建一个新的个人账号完成下面操作。

腾讯云

密钥管理 - 常用工具 - 人脸核身 - 控制台 (tencent.com) [6]

获取AK、SK后无需开通CDN的服务即可调用相关API

火山云

访问控制-火山引擎 (volcengine.com) [7]

内容分发网络 (volcengine.com) [8]

开通CDN服务,需要给账户内充值100元,在开通服务后可以退还

阿里云

RAM 访问控制 (aliyun.com) [9]

获取AK、SK即可,无需开通CDN服务

百度云

百度智能云-管理中心 (baidu.com) [10]

获取AK、SK即可,无需开通CDN服务

华为云

获取AK/SK_API签名指南_华为云 (huaweicloud.com) [11]

华为云需要账户内充值1k后开启CDN服务,并且配置一个加速域名。在开启后可退费1k

CDN - 控制台 (huaweicloud.com) [12]

需要准备一个自己的域名

注意配置源站地址

此处是因为华为云的产品特性,只有开启了加速域名才可以使用API查询出数据

四、实现原理

本工具实现原理就是调用各大云厂商的对应CDN API,查询IP是否为该厂商的CDN节点,最后由ipdb和收集到的IP c段做数据兜底。现已支持的云厂商有

  • 火山云 [13]
  • 腾讯云 [14]
  • 阿里云 [15]
  • 百度云 [16]
  • 华为云 [17]

如果各位师傅发现其他云厂商有类似的API接口,欢迎提交issue和pr。

部分云厂商调取API需要开启CDN的服务,有的需要账户内需要余额方可开启!本人测试上述云尝试可以充值开启服务后提现

开启CDN服务单纯使用本工具是不需要任何资费,对于配置CDN其他的功能出现的扣费问题,本人和此教程不承担任何责任。

最后的数据兜底来源于 ipipfree.ipdb [18] 和收集的部分C段,如果师傅们有最新的数据文件可以提交issue和pr。

参考资料
[1]

火山云: https://www.volcengine.com/docs/6454/71436

[2]

腾讯云: https://cloud.tencent.com/document/api/228/37868

[3]

阿里云: https://api.aliyun.com/document/Cdn/2018-05-10/DescribeIpInfo

[4]

百度云: https://cloud.baidu.com/doc/CDN/s/8jwvyeunq

[5]

华为云: https://support.huaweicloud.com/api-cdn/ShowIpInfo.html

[6]

密钥管理 - 常用工具 - 人脸核身 - 控制台 (tencent.com): https://console.cloud.tencent.com/cam/capi

[7]

访问控制-火山引擎 (volcengine.com): https://console.volcengine.com/iam/keymanage/

[8]

内容分发网络 (volcengine.com): https://console.volcengine.com/cdn/homepage

[9]

RAM 访问控制 (aliyun.com): https://ram.console.aliyun.com/profile/access-keys

[10]

百度智能云-管理中心 (baidu.com): https://console.bce.baidu.com/iam/#/iam/accesslist

[11]

获取AK/SK_API签名指南_华为云 (huaweicloud.com): https://support.huaweicloud.com/devg-apisign/api-sign-provide-aksk.html

[12]

CDN - 控制台 (huaweicloud.com): https://console.huaweicloud.com/cdn/?region=cn-north-4&locale=zh-cn#/cdn/overview

[13]

火山云: https://www.volcengine.com/docs/6454/71436

[14]

腾讯云: https://cloud.tencent.com/document/api/228/37868

[15]

阿里云: https://api.aliyun.com/document/Cdn/2018-05-10/DescribeIpInfo

[16]

百度云: https://cloud.baidu.com/doc/CDN/s/8jwvyeunq

[17]

华为云: https://support.huaweicloud.com/api-cdn/ShowIpInfo.html







请到「今天看啥」查看全文