TheCjw 发表于 2019-4-24 15:32

使用Scoop简化Windows逆向环境搭建

本帖最后由 TheCjw 于 2019-7-12 10:51 编辑

作为码农及安全行业从业人员,在工作中会使用到各种开发、逆向、分析、调试等工具。不少人都会在成长的过程中,构建一套符合自身习惯的环境,或者采用Kali Linux、Appie、吾爱破解工具箱之类的预装环境。上古时代,收集各种论坛发布的工具箱也是乐趣之一,从中可以搞到一些有趣的插件,学习一些配置。工作之后,尤其是这几年给不少新人做了入职培训,遇到如下情况:
[*]WIndows为主:公司默认配备了Windows笔记本,且有文档编辑需求,大多数人必须使用Windows;
[*]环境一团糟:员工会按照自己的习惯搭建一套自己的环境,而且大多数人喜欢就地解压,环境变量随意配置;
[*]来源不明:配置工作环境比较原始,包括但不限于U盘拷贝、IM传送、FTP、甚至随便从什么地方下载;
[*]重复工作:自动化的服务器需要手动配置;
[*]…
上述情况带来的问题十分明显,抛开琐碎和重复的工作,工具版本过低、冲突导致的问题时常出现,十分影响效率。最初我尝试推广Powershell、ConEmu、Cmder等工具,并通过构建PowerShell profile维护启动命令行、编写简单脚本等,能够解决部分问题。直到去年偶然遇到了Scoop,才解决了所有问题。Scoop是一个Windows上的命令行包管理器,使用PowerShell编写,代码十分精简。关于Scoop的基本使用,可以参考少数派的文章和的h404bi博客文章。对于我个人而言,Scoop有如下优点:
[*]十分精简:安装简单,在Windows 10上开箱即用。
[*]以开发工具为主,配合extras和java仓库基本够用,包括常见的Runtime和IDE,以及x64dbg、dnSpy等工具也包括在内。
[*]不会污染环境变量,Scoop会创建shims作为启动脚本。
[*]社区活跃,更新相对及时。
[*]有一定自由度,可以自行添加仓库。
所以,从去年开始习惯Scoop之后,我尝试制作了一个和逆向相关的仓库,用于收录一些常用但是没被包含的逆向工具。地址和使用方法参考: https://github.com/TheCjw/scoop-retools (欢迎关注+Star+收藏)。所以,现在的环境搭建十分轻松,只需要一个PowerShell脚本即可完成常见工具的安装。当然,有一个稳定的代{过}{滤}理是关键。如配置基本的Android逆向环境,在安装好Scoop之后,可以运行如下脚本安装:scoop install git # 可选,如果没有安装Git,需要先安装Git
scoop bucket add java # 添加Java仓库
scoop bucket add retoolshttps://github.com/TheCjw/scoop-retools.git
scoop install oraclejdk # 安装JDK
scoop install apktool axmlprinter baksmali bytecode-viewer cfr classyshark dex2jar gda jadx jd-cmd luyten recaf smali运行完成后,基本上Android逆向需要的工具,都可以直接通过命令行直接使用。目前,仓库中包含的工具如下:


APP NAMEHOME PAGE
apktoolhttps://github.com/iBotPeaches/Apktool
assetstudiohttps://github.com/Perfare/AssetStudio
axmlprinterhttps://github.com/rednaga/axmlprinter
baksmalihttps://github.com/JesusFreke/smali
bytecode-viewerhttps://github.com/Konloch/bytecode-viewer
cff-explorerhttp://www.ntcore.com/exsuite.php
cfrhttp://www.benf.org/other/cfr/
classysharkhttps://github.com/google/android-classyshark
dex2jarhttps://github.com/pxb1988/dex2jar
diehttps://github.com/horsicq/DIE-engine
dynamoriohttps://github.com/DynamoRIO/dynamorio
gdahttp://www.gda.wiki:9090/index.php
ghidrahttps://ghidra-sre.org/
il2cppdumperhttps://github.com/Perfare/Il2CppDumper
jadxhttps://github.com/skylot/jadx
jd-cmdhttps://github.com/kwart/jd-cmd
libimobiledevicehttps://github.com/libimobiledevice-win32/imobiledevice-net
luytenhttps://github.com/deathmarine/Luyten
pinhttps://software.intel.com/en-us/articles/pin-a-dynamic-binary-instrumentation-tool
recafhttps://github.com/Col-E/Recaf
rekohttps://github.com/uxmal/reko
simplifyhttps://github.com/CalebFenton/simplify
smalihttps://github.com/JesusFreke/smali
snowmanhttps://derevenets.com/


目前,仓库收录的工具还不算多,以后会根据需求添加,逐步完善。同时,由于个人精力有限,目前仓库不是特别完善。如果仓库中有你需要但是没包含的工具,欢迎在Github提交Issue和PR,我会及时处理。注意,该仓库不考虑收录破解和盗版的软件,如果有需要的话,可以自己搭建一个。

TheCjw 发表于 2019-4-24 22:55

paike100 发表于 2019-4-24 18:48
能否出个使用和搭建教程呢

1楼已经给出了Scoop的两个参考文档,搭建的完整示例命令也有了。

paike100 发表于 2019-4-24 18:48

能否出个使用和搭建教程呢

学士天下 发表于 2019-4-25 07:49

我还是从基础学起吧。。。{:1_909:}

liltn 发表于 2019-4-25 10:36

感谢楼主分享,{:1_927:}

yaoyao7 发表于 2019-4-25 13:56

好帖,点赞!

ICEtomato 发表于 2019-4-25 17:23

工具包吗?

wslpaaa 发表于 2019-4-25 21:53


工具包吗?

fentian_85 发表于 2019-4-25 22:26

谢谢分享

92013 发表于 2019-4-29 21:32

感觉不错 很好用 谢谢
页: [1] 2
查看完整版本: 使用Scoop简化Windows逆向环境搭建