前言
本文主要记录的是CTF比赛 Crypto类中环境的搭建,根据本人的需要会随时更新文章,等不更新了就说明环境基本没什么变化了。
系统
Homebrew的安装(二进制文件安装似乎不是很好用,总是报错):
|
|
go环境安装:
|
|
hugo安装:
|
|
python
python的环境搭建比较简单,只需要安装几个固定的库就可以了,vscode 就能满足条件,这个不需要其他太多的东西,常用的库有如下几个:
|
|
写一个python的环境安装txt吧:
|
|
pwntools安装
python3.9的支持似乎不是很好,准备一个3.10.11试试,这里有两种下载的方式,一种是源码,另一种是安装文件,其中源码提供了tgz文件,这里先用安装包安装了,太麻烦了:
|
|
可以发现python3.10的启动是通过python3.10的bash指令启动,而不是python3,需要将python3.10.11设置为默认的python版本,并设置相关的库。(看下面,不用设置,改vsc的就行,直接在python3.10里面安装库)
反转了,是版本问题,直接改vsc的配置,然后把pwntools的其中依赖库改为0.29🔗:
|
|
pwntools的安装有些麻烦,在mac上构建binunits总会有各种奇怪的错误:
|
|
还有一些github开源的工具,都可以安装,不过后者就是一些固定的脚本,最后就是一些自己收集的现成脚本之类的了。
mac下python的环境配置,在当前打开的工作区中,也可以把这些加入用户的设置中(settings.json):
|
|
Sagemath
sage是一个开源的数学软件,用于进行一些数学运算,特别是有关代数的相关运算。
sage对于windows的支持在9.3,而在linux上的支持较新,如果在linux上安装也是可以的,不过在mac上可以直接安装sage,毕竟sage提供了很多快捷的函数。
sage的二进制版本下载:https://github.com/3-manifolds/Sage_macOS/releases。因为笔者的笔记本还是Intel的处理器,所以下载的是x86的dmg文件,现在的Mac应该下载的都是ARM版本的了吧(大概)。截止到2023年秋季,sagemath对于Mac支持到了10.x的版本,相比Windows新了不少,而且直接下载mac版本的sage,可以不需要Linux安装sage那么麻烦。
下载完成后直接拖动就行了,一般情况下不需要配置多余的内容。此时下方栏中会有一个sage的图标,点开的时候会提供选项是进入哪个环境。比如会有一个shell和jupyter的环境可以选择,一般个人习惯用jupyter了,比如可以选择jupyter v7,需要注意的是,sage里面需要重新安装上面提到的库才能运行,否则是无法运行上面的库中的函数,也无法导入。
sage安装包安装时没问题的,可以正常打开。
虚拟机
虚拟机用的是Vmware的Fusion 13Pro,平时快照,备份都还可以。
其他软件和应用
CyberChef
chef是一个集合了很多功能的软件,无论是在线还是本地,都能使用不仅包含编码、加密解密、查看文件等功能。
ciphey
ciphey是一个自动工具,但是一般情况是对于英文的识别更好,可以自动解码复杂的编码过程之后的字符串。相关链接:🔗
|
|
相比chef,ciphey 在处理较为庞大的数据的时候更有优势,但是如果是操作较为复杂的情况下,而且数据规模不大,chef更有优势一些。
还有一个问题:
Ciphey doesn’t work on Windows with Python 3.9+, use Python 3.7 or Python 3.8. Other platforms are fine with Python 3.9, Python 3.10 doesn’t work.
也就是说,这波只能用python3.9跑了,算了,再下一个3.8,我佛了:
|
|
总算能用了卧槽了。
yafu
这是一个集合了多种分解大数的工具,但是有些情况下分解出来的可能是合数,如过模数的生成过程小质数的bit大小相同,则需要判断结果中长度,如果有明显的区别,可能是因为没有分解彻底。
如果需要运行在虚拟机中,可以考虑安装一个win10的虚拟机,占用不是特别大(安装的软件很少的情况)。
这个东西不行就算了,还是整个库吧,配个环境累的不行,真绷不住了。