内容简介:Chepy是一款基于CyberChef工具的Python库&命令行实现,它是一个Python库/命令行,实现了跟CyberChef工具相同的功能。Chepy是一个带有完整命令行接口的Python库,它完整复制了
Chepy是一款基于CyberChef工具的 Python 库&命令行实现,它是一个Python库/命令行,实现了跟CyberChef工具相同的功能。
Chepy是一个带有完整命令行接口的Python库,它完整复制了 CyberChef 的大部分功能。开发人员在Chepy上付出了非常多的努力,并使它成功变成了基于CyberChef的Python实现,而且其中所有的代码均采用纯Python开发。Chepy跟CyberChef相比,有很多核心优势,而且Chepy还将CyberChef中对栈的概念以不同模块的形式仍然保留在了Chepy中。
当然了,Chepy还没有达到完美的程度,因此还需要社区中的各位开发人员贡献自己的力量。
工具安装
Chepy可以通过下列几个方式来进行安装。
Pypi安装
pip3 install chepy # optionally with extra requirements pip3 install chepy[extras]
Git安装
git clone --recursive https://github.com/securisec/chepy.git
cd chepy
pip3 install -e .
# I use -e here so that if I update later with git pull, I dont have it install it again (unless dependencies have changed)
Docker安装
docker run --rm -ti -v $PWD:/data securisec/chepy "some string" [somefile, "another string"]
独立代码
当然了,我们也可以将Chepy以独立代码的形式进行构建,这里需要涉及到将所有的依赖组件封装整合成一体。
git clone https://github.com/securisec/chepy.git
cd chepy
pip install .
pip install pyinstaller
pyinstaller cli.py --name chepy --onefile
构建完成的代码将存储在dist/目录下。
插件系统-【 参考文档 】
.. toctree:: :maxdepth: 3 :caption: Contents: usage.md examples.md cli.rst chepy.md core.md modules.rst extras.rst plugins.md pullrequest.md config.md faq.md Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`
项目代码库中托管了大量Chepy插件,我们也可以根据自己的需要来用自定义插件扩展Chepy的功能。所有的Chepy插件必须继承ChepyCore类,如需使用插件库,请运行下列命令:
git clone https://github.com/securisec/chepy_plugins.git
然后编辑Chepy配置文件,将pluginpath设置为chepy_plugin目录。配置文件位于$User/.chepy/chepy.conf路径下。
下面给出的是配置文件样本:
[Plugin] pluginpath = /home/test/chepy_plugins [Cli] history_path = /home/test/.chepy/chepy_history prompt_char = > prompt_colors = #00ffff #ff0000 #ffd700 show_rprompt = false prompt_rprompt = #00ff48 prompt_bottom_toolbar = #000000 prompt_toolbar_version = #00ff48 prompt_toolbar_states = #60cdd5 prompt_toolbar_buffers = #ff00ff prompt_toolbar_type = #ffd700 prompt_toolbar_errors = #ff0000
Chepy vs Cyberchef
Chepy所实现的栈机制比CyberChef要简单,并且是以模块化的形式实现的。比如说,CyberChef中的栈概念如下:
但在Chepy中的形式如下:
from chepy import Chepy file_path = "/tmp/demo/encoding" print( Chepy(file_path) .load_file() .reverse() .rot_13() .base64_decode() .base32_decode() .hexdump_to_str() .o )
优势
1、Chepy以纯Python实现,并且支持各种Python API; 2、Chepy提供了命令行接口; 3、Chepy命令行接口支持完整的自动化补全; 4、支持对PE、ELF和其他特殊文件格式进行解析; 5、可通过插件系统实现功能扩展; 6、可利用各种Python库实现不同功能; 7、Chepy可与CyberChef Web应用程序进行交互; 8、Chepy Python库的速度比CyberChef Node库要快很多; 9、支持HTTP/HTTPS请求;
劣势
1、Chepy不是一个Web应用程序; 2、Chepy没有100%实现CyberChef的每一个功能; 3、Chepy目前还不提供magic方法;
工具使用样例
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Python 命令行之旅:使用 argparse 实现 git 命令
- 使用函数式实现命令模式
- jmap 命令的实现原理解析
- 脚手架命令行工具实现揭秘
- 使用 Golang 实现一个 JSON 命令行工具
- 如何实现一行命令自动生成 Flutter 插件
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Spring技术内幕
计文柯 / 机械工业出版社 / 2010-1-1 / 55.00元
内容简介: 本书是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔!Java开发者社区和Spring开发者社区一致强烈推荐。 国内第一本基于Spring3.0的著作,从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从木书中参透Spring框架的优秀架构和设计思想,而且还能从Spring优雅的实现源码中一窥......一起来看看 《Spring技术内幕》 这本书的介绍吧!