当前位置:首页网络攻防学习CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

CryptoTester

一种用于处理密码学的实用程序,适用于勒索软件分析。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

六角视图

CryptoTester 中使用的所有十六进制视图都提供了一些增强的功能。

  • 空字节颜色为浅灰色
  • 表示 ASCII 字符的字节为橙色
  • 换行模式 ( 0D 0A) 为紫色
  • 如果粘贴可用,则在解析为十六进制之前删除所有空格、换行符和公共分隔符
  • 用于将字节复制为 C 数组或 BigNum 的右键单击选项

在许多视图(例如InputOutput)上,单击偏移行(00 01 02 03...相应视图上方)将打开一个对话框,显示解码视图旁边的字节。

整数解析

大多数接受整数的输入也接受特殊值和函数。

例子:

  • 十六进制: x10 -> 16
  • 输入长度: len -> 400
  • 块大小: block -> 16(所选算法的块大小)
  • 向上舍入: up(60, 16) -> 64
  • 向下舍入: down(60, 16) -> 48

简单的算术可以与这些函数结合使用。

  • up(len-x100, b)– 从输入长度中减去 256,然后四舍五入到所选算法的最接近的块大小(例如 AES 为 16)

任何负值都被假定为len - value,也称为相对于输入末尾的值。

主面板

加密/解密

主面板包含用于在输入上使用加密原语的工具。十六Input进制视图接受直接粘贴字节,或者File可以使用菜单加载文件、文本、base64 编码字节等。文件也可以直接拖放到视图中。

关键选项

允许以多种格式指定密钥,并包含许多散列和密钥派生函数的选项;这些字段适应当前选择的算法及其支持的内容。

注意:密钥的处理顺序与 UI 中显示的顺序相同;首先根据 解码密钥Format,然后使用参数进行散列Hash,最后使用Derive参数导出,然后将其交给加密算法。Hash从 v1.7.0.0 开始,您可以交换和处理的顺序Derive

密钥的最终输出长度显示在输入框上方。单击此按钮将在单独的对话框中显示最终计算出的密钥。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

加密选项

允许选择加密算法及其参数(如果支持)。

注意:(IV BytesNonce取决于算法)00如果留空,将自动填充为算法适当长度的字节。

选择选项

可以使用两种不同的模式选择输入:“范围”和“块”。

范围

一个从 开始Offset并占用Length字节的简单范围。

除非勾选该复选框,否则每当更改时都会Length自动更新。 如果您在现场进行了一些计算,并且希望恢复为实际长度,则只需按 按钮即可。InputLock Parameters
LengthInputReset Length

如果Splice Remaining Bytes勾选,则之前的任何字节都Offset将添加到 之前Output,并且之后的任何字节Offset+Length都会附加。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

获取Take字节,然后跳过Skip字节,获取Take字节,跳过Skip字节……直到 结束Input。这可用于实际上在明文块之间“交错”的密文。加密算法作为一个连续的块在生成的块上运行,无需重置密钥/IV/随机数等。

如果Splice Remaining Bytes勾选,则该Skip部分中的任何字节都会交织回Output.

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

输入文件信息

此部分显示有关Input文件大小、检测到的 MIME(如果是文件)、总熵以及是否能被 16(常见块大小)整除等简单信息。

杂项

和视图具有Input同步Output滚动;要禁用此功能,请取消选中Syncronized scrolling它们之间的复选框。

🡨之间的按钮可用于将 移动到视图。InputOutputOutputInput

或可以使用其视图下方的相应下拉列表进行散列InputOutput它还Output可以运行验证算法(当前对 ECDSA 的支持有限)。

比较

该面板允许将加密文件与其原始文件进行比较。两个视图都支持拖放,或者File -> Open File可以使用顺序Original打开Encrypted。也可以使用任何选项填充
视图;例如,与一定长度的空字节或 Windows 示例图片进行比较。OriginalFile -> InputChrysanthemum.jpg

和视图具有Original同步Encrypted滚动;要禁用此功能,请取消选中Syncronized scrolling它们之间的复选框。

和视图之间的按钮可用于交换它们的内容。OriginalEncrypted

两个视图之间任何不同的字节都将以深红色显示。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

原始文件/加密文件信息

分别显示OriginalEncrypted视图的基本信息。

分析

一旦两个视图都被填充,就会对它们进行快速分析。

  • 哈希分析:Original检查是否存在任何哈希值Encrypted
  • 文件名:检查文件名的常见更改(例如前置/附加或编码)
  • BLOB 分析:检查中是否存在任何 CryptoAPI blobEncrypted
  • XOR 分析:检查 XOR 的重复块(或其他简单密码)
  • 文件名标记:检查原始文件名是否存在Encrypted(UTF-8 或 UTF-16)
  • 文件大小标记:检查原始文件大小Encrypted(以各种形式和编码)
  • ASCII 标记/分析:检查开头或结尾处的 ASCII(或 base64)标记Encrypted

压缩/解压

该面板允许原始使用少数压缩算法,并且具有与该Encrypt/Decrypt面板类似的功能。

工具

斑点分析仪

用于分析 CryptoAPI blob 和 CNG blob 的工具。

如果支持,可以将 BLOB 导入二进制、base64、PEM、XML 和 ASN.1 格式,或从二进制、base64、PEM、XML 和 ASN.1 格式导出。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

工具

仅针对支持的 Blob 类型(如果适用)激活的其他 Blob 相关工具。

  • 解密 BLOB:允许通过输入 PRIVATEKEYBLOB 来解密 SIMPLEBLOB
  • RSA 计算器:将当前 RSA 密钥加载到RSA 计算器工具中
  • 修复 BLOB:如果检测到可恢复的损坏,则修复 BLOB
  • Blob 生成器:允许生成任何 CryptoAPI Blob
  • 翻转字节序:翻转关键内容的字节序(可能会破坏密钥!
斑点生成器

生成 CryptoAPI blob。会Bit Length自动更新为所选 的支持值aiKeyAlgbType请注意,和的某些组合aiKeyAlg无效,并且会引发 CryptoAPI 提供程序的错误。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

注意:密钥是使用CryptGenRandom在内部生成的,但我无法保证使用从此实用程序生成的密钥的加密安全性。

RSA计算器

用于分析/计算 RSA 密钥的工具。显示密钥的单独参数,可以显示为十进制或十六进制。如果存在足够的参数,则可以计算密钥的其余部分。

密钥可以以各种格式导出,包括 CryptoAPI blob、CNG blob、PEM、XML 和 ASN.1,导出到文件、剪贴板或主窗口(加密/解密)。此外,如果导出到主窗口,可以导出原始整数以用于原始 RSA 算法。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

钥匙查找器

一种在文件中搜索多种格式的加密密钥的工具。

支持的格式示例:

  • 加密 API 斑点
  • 压缩天然气斑点
  • ASN.1 斑点
  • NTRU 斑点
  • 以上所有内容均为 ASCII 十六进制字符串
  • 以上全部为base64(或损坏的base64)
  • PEM 密钥
  • XML 键
  • 十六进制字符串形式的原始 RSA 模数和指数
CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

随机数生成器测试员

用于测试各种已知 PRNG 算法的工具。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

种子选项

设置SeedPRNG 的起始位置。

RNG 选项

设置 PRNGAlgorithm以及要生成的输出,以及应用于每个输出的Length选项。Modulus例如,aModulusxFF用于将每个输出转换为一个字节。

输出

  • 格式:输出每个随机数的格式为

如果Alpha选择:

  • 字符集:映射每个随机数的字符集
  • 预设:自动填充的常用预设字符集
  • 跳过字符:如果要输出此列表中的字符,则会跳过该字符,并轮询下一个随机数

生成的输出的熵也会显示在Alpha输出中。这是对盲目暴力破解输出(不直接攻击 PRNG)的熵(或可能性数量)的粗略估计。

基本编码器

使用不同基本编码的工具。支持标准预设字符集,或提供您自己的自定义字符集。

除了使用校验和的编码器(例如比特币的 Base58Check)之外,解码是在不验证填充的情况下完成的,因此即使是部分或损坏的编码也将被原始解码。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

字符串编码器

用于同时查看 ASCII、UTF-8 和 UTF-16 格式的文本或字节的工具。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

ECC验证器

用于验证椭圆曲线点的工具。可以从 ECPoint(未压缩或压缩形式)、PEM 或 CNG blob 导入/导出。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

运营

根据当前面板进行的各种操作。

XOR 文件/AND 文件

从面板中获取Originaland ,并应用 XOR 或 AND 运算,并显示流。EncryptedCompare

生成密钥流

使用面板中的算法信息Encrypt/Decrypt并生成给定长度的密钥流以保存到文件。

视觉差异

显示面板中像素之间差异的图表Compare

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

暴力破解算法

使用提供的关键材料和面板Input中的关键材料Encrypt/Decrypt以及给定的预期输出,并枚举该Encryption Options部分中的所有可能选项以尝试找到匹配项。

暴力破解密钥

Input该工具可用于根据指定的密码参数测试已知密钥的列表或文件夹。

  • 密钥文件格式:指定输入的预期格式,例如每行使用 base64 编码的密钥,或Byte Count一次获取文件的字节。
  • 预期输出:预期输出为字节,或只是任何非空输出(仅应与有效的填充方案一起使用)

如果密钥匹配成功,该Select按钮将被激活,以允许将密钥及其参数传递到主窗口。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

尝试盲解密

使用所选密码的块大小,枚举每个可能的块并尝试使用指定的密钥进行解密。

示例:您有一个 RSA-2048 私钥和一个0x1000可能密文的字节 blob,如Input. 使用此操作将尝试解密Input[0x00:0x100], then Input[0x01:0x101], thenInput[0x02:0x102]等等…

注意:该操作目前仅支持RSA算法。它还限制最多 10000 个输入字节。

先进的

小尾数法

内部使用小端(如果算法支持)。

风俗

如果所选算法支持任何参数,则允许设置自定义参数。例如,Salsa20 系列算法支持自定义轮数、常数、位置或输入原始矩阵。

四号

IV 的选项,例如从文本或 Base64 输入,以及从已知明文恢复 IV。

预设

某些加密方案的预设,例如 OpenSSL。

反转输入字节

简单地反转 的字节顺序Input

转变

用于转换的小工具。

双字 ⇆ 整数

将整数转换为 DWORD,或将 DWORD 字节转换为整数。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析

十六进制 ⇆ 整数

将十六进制字节转换为整数列表,或将整数列表转换为字节。可以选择设置输出的空格和逗号。

CryptoTester:一种用于处理密码学的实用程序,适用于勒索软件分析
温馨提示:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
网络攻防学习

Bashfuscator:一个可配置和扩展的 Bash 混淆框架

2023-7-4 14:51:11

网络攻防学习

Awesome-linux-攻击-取证-purplelabs

2023-7-5 20:25:24

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

你有新的私信

请务必要查看您的私信哟~~