|
|
|
@ -0,0 +1,23 @@
|
|
|
|
|
* client:
|
|
|
|
|
** client.c——客服端实现,写了一个简易shell,包含了一些内置功能的实现("help", "set", "unset", "show", "run", "export", "load", "exit")
|
|
|
|
|
help打印其他命令使用方法
|
|
|
|
|
exit退出
|
|
|
|
|
set设置变量值,需要两个参数,参数一为各参数类型("lhost", "lport", "srchost", "srcport", "rhost", "rport", "prot", "pass", "token",不区分 大小写),参数二为该参数的值,其值存储在var_array中
|
|
|
|
|
unset撤销参数值,与set相反
|
|
|
|
|
show打印参数值,按照VAR VALUE DESCRIPTION的格式
|
|
|
|
|
run主要部分,首先检验各参数是否被正确设置,然后起了两个子进程listener 和 packet,并设置传入的参数.......
|
|
|
|
|
export需要一个参数,为文件路径,以w+方式打开文件,并写入各参数的值
|
|
|
|
|
load与export类似
|
|
|
|
|
** listener.c——实现了远程连接(个人感觉类似与ssh),基于TCP,接受客服端的命令并在内置的shell上执行,包含的内置命令有"help", "download", "upload", "shell", "delay", "exit".......
|
|
|
|
|
** packet.c——指定不同的协议(tcp,icmp,udp)进行自定义的发包......
|
|
|
|
|
* cypto:包含了aes.c和sha1.c,顾名思义,加密算法,初步分析没有进行魔改
|
|
|
|
|
* include:
|
|
|
|
|
** aes.h——ase.c的头文件
|
|
|
|
|
** sha1.h——同上
|
|
|
|
|
** config——配置文件,定义了一些宏
|
|
|
|
|
** custom_rol32.h——定义了简单的加解密宏,并含有一个循环左移的函数
|
|
|
|
|
** pel.h——定义了pel库的接口,实现初始化、消息接受、发送
|
|
|
|
|
** util.h——加载图形界面
|
|
|
|
|
* transport:pel.c——用于处理客户端和服务端之间通信时的数据加解密过程
|
|
|
|
|
* cmd.c——命令行工具,启动一个交互式的shell
|
|
|
|
|
* shell.c——自定义的shell
|