Chepy:一款基于CyberChef工具的Python库&命令行实现

栏目: IT技术 · 发布时间: 4年前

内容简介:Chepy是一款基于CyberChef工具的Python库&命令行实现,它是一个Python库/命令行,实现了跟CyberChef工具相同的功能。Chepy是一个带有完整命令行接口的Python库,它完整复制了

Chepy是一款基于CyberChef工具的 Python 库&命令行实现,它是一个Python库/命令行,实现了跟CyberChef工具相同的功能。

Chepy:一款基于CyberChef工具的Python库&命令行实现

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:一款基于CyberChef工具的Python库&命令行实现

但在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方法; 

工具使用样例

Chepy:一款基于CyberChef工具的Python库&命令行实现


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

ASP.NET动态网站开发基础教程

ASP.NET动态网站开发基础教程

郭兴峰 / 清华大学 / 2006-5 / 32.00元

ASP.NET是由Microsoft公司推出的新一代Web开发构架。开发人员可以通过ASP.NET实现动态网站的开发,包括开发Web应用程序和Web服务。   本书详细讲解了ASP.NET动态网站开发技术,共分13章,内容包括ASP.NET语言基础、HTML与Script语言、C#语言基础、ASP.NET常用对象、数据库访问技术、数据服务控件和数据绑定技术、ASP.NET配置和部署、ASP.......一起来看看 《ASP.NET动态网站开发基础教程》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具