1 |
|
hashcat:已知密钥长度字符类型Hash破解
安装步骤
- 安装最新版本Mingw-w64(使用旧版x86_64-w64-mingw32-gcc4.8.3编译错误)
- 编译最新版本libiconv(win64需要,直接gmake不需要),并将编译好的/usr/local/lib/libiconv.a复制到hashcat/src目录
1 |
|
- 编译hashcat
1 |
|
常量定义
OpenCL\inc_hash_constants.h,如Hash时修改了默认常量,破解时需要对应修改,重新编译后再运行命令进行破解。
1 |
|
pwcrack-framework:多平台在线验证Hash
1 |
|
将msys64\mingw64\bin
添加到Path系统变量,再运行bundle install
安装依赖库。
1 |
|
RainbowCrack:彩虹表破解Hash
1 |
|
xortool:猜测用于xor的key
1 |
|
附带进行xor工具:xortool-xor
1 |
|
Cycle(suctf-2018)
类似维吉尼亚的变种,循环异或后统计字频。
BubbleBabble编码
以x开头和结尾,对于输入序列中的每两个字节,输出五个字符和短划线 。
1 |
|
Four-Square:四方加密,采用两个key
1 |
|
两字符为一组
加密时:WH在Alphabet Matrix下标为:[4,1],[1,2],交换y坐标得到:[4,2],[1,1]对应在Key1和Key2 Matrix是XB
解密时:XB在Key1和Key2 Matrix下标为:[4,2],[1,1],交换y坐标得到:[4,1],[1,2]在Alphabet Matrix为WH
Pari/GP:数论快速计算库
1 |
|
scryptos:python调用Pari/GP库
- 将源码中使用gmpy的地方替换为gmpy2,修改setup.py中gmpy为gmpy2
- 修改wrapper\common.py中check函数直接return True,因为其检查的逻辑是基于Linux的符号分隔
- 安装:python setup.py install
pycrypto:python散列和加密算法集
通过pip安装的pycrypto,DSA没有importKey函数,需要用github版本python setup.py install
安装。Windows下安装可能会有如下error:
根据$PYTHON2_HOME/Lib/distutils/msvc9compiler.py
:
1 |
|
1.安装VCForPython27
2.(此步可忽略)配置环境变量VS90COMNTOOLS=C:\Users\tyler\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\bin
,由于脚本写死是到VC目录下找vcvarsall.bat,因此在C:\Users\tyler\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC
目录下创建一个空的vcvarsall.bat
3.在cmd运行真实的vcvarsall.bat:D:\ctf\tools\crypto\pycrypto>"C:\Users\tyler\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\vcvarsall.bat" amd64
,配置好环境,即可以运行python setup.py install
安装
- 需要修改源码以避免error:
1 |
|
CTFCrackTools:米斯特安全编码转换工具
hashID:识别hash类型
OEIS:数组识别网站
wolframalpha:数学应用搜索引擎
随机数预测
- PredictJavaNextInt:Java通过的2个连续输出预测
Random.nextInt()
,(sample:CommonModulusAttack-GXYCTF-2019) - randcrack:Python通过624个输出预测
random.getrandbits()
,(sample:lrlr-ByteCTF-2019,rand-网鼎杯-2020白虎组)
解密U2FsdGVkX1
(Salted__+8bit salt)开头的openssl模式字符串
crypto-js:通过passphrase生成key和IV,等同于openssl解密命令(验证不可行!!!):openssl enc -aes-256-cbc -in infile -out outfile -pass pass:"Secret Passphrase" -e -base64