前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Decoder++:一款专用于渗透的多数据格式编码解码工具

Decoder++:一款专用于渗透的多数据格式编码解码工具

作者头像
FB客服
发布2021-01-08 15:37:41
1.6K1
发布2021-01-08 15:37:41
举报
文章被收录于专栏:FreeBuf

Decoder++

Decoder++是一款专用于渗透测试的多数据格式编码解码工具,该工具是一款可扩展的工具,专为渗透测试人员和软件开发人员设计,可以将目标数据编码/解码为各种不同的数据格式。

功能介绍

用户接口:图形化用户接口和命令行接口; 预安装脚本和编码解码器: 支持的编码/解码格式:Base16、Base32、Base64、Binary、Gzip、Hex、Html、JWT、 HTTP64、Octal、Url、Url+、Zlib; 哈希:Adler-32、Apache-Md5、CRC32、FreeBSD-NT、Keccak224、Keccak256、Keccak384、 Keccak512、LM、Md2、Md4、Md5、NT、PHPass、RipeMd160、Sha1、Sha3 224、Sha3 256、Sha3 384、Sha3 512、Sha224、Sha256、Sha348、Sha512、Sun Md5 脚本:CSS-Minify、Caesar、Filter-Lines、Identify File Format、Identify Hash Format、 JS-Beautifier、JS-to-XML、HTML-Beautifier、Little/Big-Endian Transform、Reformat Text、 Remove Newlines、Remove Whitespaces、Search and Replace、Split and Rejoin、 Unescape/Escape String 智能解码; 插件系统; 加载&存储当前会话; 支持的平台:Windows、Linux、macOS;

工具安装

Decoder++支持使用pip命令安装,安装命令如下:

代码语言:javascript
复制
# Install using pip

pip3 install decoder-plus-plus

除此之外,广大研究人员可以直接将该项目源码直接从其GitHub主页上克隆至本地:

代码语言:javascript
复制
git clone https://github.com/bytebutcher/decoder-plus-plus.git

工具使用

接下来,我们将给大家演示如何使用Decoder++,并与其进行交互。

图形化用户接口

如果你更倾向于使用图形化用户接口来进行数据转换的话,Decoder++给我们提供了两个选项,即主窗口模式(main-window-mode)和对话框模式(dialog-mode)。

主窗口模式支持页面标签,而对话框模式能够将转换后的数据内容返回至stdout以备后续分析处理使用。如果你想要在类似BurpSuite这样的工具或其他脚本中来调用Decoder++的话,这种方式就非常方便了。

命令行接口

如果不想使用图形化界面,并且还想使用Decoder++所提供的更多数据转换方法的话,推荐大家使用Decoder++的命令行接口:

代码语言:javascript
复制
$ python3 dpp.py -e base64 -h sha1 "Hello, world!"

e52d74c6d046c390345ae4343406b99587f2af0d

命令行接口支持我们以一种更简单的方式来使用所有的可用编码解码方案。首先,我们可以使用-l参数来查看支持的编码解码格式:

代码语言:javascript
复制
$ dpp -l base enc

Codec                 Type

-----                 ----

base16                encoder

base32                encoder

base64                encoder

Decoder++能够区分编码器、解码器、哈希器和脚本。跟图形化用户接口相似,命令行接口允许我们使用一行命令来进行多种格式的编码解码:

代码语言:javascript
复制
$ dpp "H4sIAAXmeVsC//NIzcnJ11Eozy/KSVEEAObG5usNAAAA" -d base64 -d gzip

Hello, world!

如需查看特定脚本的所有可用选项,可以使用help参数:

代码语言:javascript
复制
$ dpp "Hello, world!" -s split_and_rejoin help

Split & Rejoin

==============
Name  Value  Group            Required  Description

----  -----  -----            --------  -----------

split_by_chars         split_behaviour  yes       the chars used at which to split the text

split_by_length  0      split_behaviour  yes       the length used at which to split the text

rejoin_with_chars                          yes       the chars used to join the splitted text

如需配置特定脚本,我们还需要以键值对的形式提供单独的选项:

代码语言:javascript
复制
$ dpp "Hello, world!" -s search_and_replace search_term="Hello" replace_term="Hey"

Hey, world!

插件开发

如需添加自定义的编码解码器,只需要将其拷贝至项目主目录下的$HOME/.config/dpp/plugins/文件夹中即可:

代码语言:javascript
复制
from dpp.core.plugin.abstract_plugin import DecoderPlugin

class Plugin(DecoderPlugin):

    """
    Possible plugins are DecoderPlugin, EncoderPlugin, HasherPlugin or ScriptPlugin.

    See AbstractPlugin or it's implementations for more information.

    """
    def __init__(self, context):

        plugin_name = "URL"

        plugin_author = "Your Name"

        # Python Libraries which are required to be able to execute the run method of this plugin.

        plugin_requirements = ["urllib"]

        super().__init__(plugin_name, plugin_author, plugin_requirements)

    def run(self, text):

        # Load the required libraries here ...

        import urllib.parse

        # Run your action ...

        return urllib.parse.unquote(text)

项目地址

Decoder++:【点击底部阅读原文获取

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Decoder++
  • 功能介绍
  • 工具安装
  • 工具使用
    • 图形化用户接口
      • 命令行接口
      • 插件开发
      • 项目地址
      相关产品与服务
      网站渗透测试
      网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档