工具开发-Netcat程序监控

举报
Khan安全团队 发表于 2023/05/15 20:18:09 2023/05/15
【摘要】 工具开发-Netcat程序监控

 最近在学习中发现 netcat 连接被动后门比如( crontab 写定时反弹shell / alias替换命令反弹shell)时的局限性很大,当shell反弹回来,你却不能及时去操作shell这种情况,然后我就花了点时间写了个小脚本监控 (权当练习,毕竟过年无聊)。


功能点:  

    1、监控netcat的交互情况  

    2、正则匹配IP

    3、当接收到shell的时候发送邮件推送


监控主要思路:

    1、创建一个跑 netcat 的子进程

    2、当接收到'connect'就执行下一步

    3、before属性是直到异常为止接收的所有数据

    4、在before中正则匹配IP

    5、执行邮件方法,并将 肉鸡ip 通过邮件方式邮件到目标邮箱

    6、将子进程控制权还给用户


用法:

    ./moniter.py

    [!]Usage: ./moniter.py [PORT] 


实现工具所需的库:pexpect , smtplib , re  


监控主要代码:

pythondef run(Port):        process = pexpect.spawn("nc",['-lvp',Port])     #        pdb.set_trace()        process.expect_exact("connect", timeout = None)                         string =  str(process.before)                           ip = re.search(r'((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))',string,re.M|re.I)        print(ip.group())                                       em4il(ip)                                               process.interact()                              

温馨提醒:发送邮件的邮箱需要在邮箱设置中开启smtp服务


实验截图:

图片

完美运行👍

邮件发送截图

图片


拓展:

    脚本也可充当简陋的蜜罐用

    脚本暂时不是太完善,如果被扫描则会断开链接=。=

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。