c2框架编写

0x00  前言

由于昨天520,今天又是521,我被朋友圈和qq空间给刷屏了,都在秀对象。一气之下决定把我上次写的nc拿出来使用类进行重构,多实例化几个对象,这下子我也有对象了。

 

 0x01 一些小插曲

在重构的时候,base64加密通讯加密的一直出问题。一直在修bug,改到了4点多也就是现在4.18 的发现 在返回命令的时候忘记base64编码了,在server解码的时候才会报错,我被自己被笨哭了,同时也加了个异常捕获和修复了输入不正确命令直接报错退出的bug。这次使用了subprocess模块的poen函数完美解决了,在中途遇到非常恶心的一件事,就是windows下面返回的命令是中文必须使用bgk编码,而linux不是中文使用gbk编码会报错,所以分出了2个版本来。修改bug中,由于自己写的代码也不喜欢写注释,改代码的时候,改着改着脑子一团糟。

 0x02   功能演示

kali1

python3 nc.py -l 4444 -e base64

 

kali2

python3 nc.py -i 192.168.3.51 -p 4444 -e base64

 

  0x03   待完善功能

在这还有个文件传输功能和udp  http的通讯功能没写,单个功能的demo都已经写好了 就差把它封装起来就完成了。当然还有个多会话,这个的话其实实现起来也简单,可以直接使用多线程让子线程去进行accept()的阻塞来接收连接的机器,新的socket 给个标识符。输入该标识符就调用对应的socket 进行通讯就完成了。

这里把github地址贴出来:

 

https://github.com/nice0e3/python_c2

0x04  一些小感慨

在这段时候一直在写代码,还是有收获的,很多以前的想法都在逐渐完善。代码功能也是有所提升。

愿代码没有bug。

记录美好时刻。

相关文章

每个HTTP请求和响应都会带有相应的头部信息。默认情况下,在...
"Markdown自动生成目录" "使用n...
当我们从客户端向服务器发送请求时 服务器向我们返...
原理 介绍 哈希表(Hash table,也叫散列表), 是根据关键码...
一 共享秘钥 1.1 概念 共享秘钥和我们生活中同一把锁的钥匙概...
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就...