Mac下安裝pwntools

不要使用pip安裝!

不要使用pip安裝!

不要使用pip安裝!

首先要保證你的電腦上裝了homebrew,沒裝的自行搜索,這個都不裝就別用Mac搞技術了。

直接敲命令:

brew install pwntools

回車之後就裝好了。
安裝完後會在/usr/local/Cellar/下生成pwntools文件夾,不用管它,我們只需要用到這個路徑

/usr/local/Cellar/pwntools/3.12.2/libexec/lib/python2.7/site-packages

裏面包含了pwntools所需要的各種python相關文件,終端中cd進入然後pwd複製路徑
然後只需把這個文件夾添加到python的sys.path中,方法如下:
首先是Mac自帶的python:

➜  ~ cd /Library/Python/2.7/site-packages
➜  site-packages sudo vim mypkpath.pth //自己把路徑複製進去,esc+wq保存
➜  site-packages cat mypkpath.pth //看一下對不對,不看也無妨
/usr/local/Cellar/pwntools/3.12.2/libexec/lib/python2.7/site-packages

然後是brew安裝的python,操作同上:

➜  ~ cd /usr/local/lib/python2.7/site-packages
➜  site-packages git:(master) ✗ vim mypkpath.pth
➜  site-packages git:(master)cat mypkpath.pth
/usr/local/Cellar/pwntools/3.12.2/libexec/lib/python2.7/site-packages

這裏同時改了系統自帶的和brew的,是爲了防止下面出現莫名其妙的錯誤。

然後試驗一下,沒有報錯就是正常:

➜  site-packages git:(master) ✗ python
Python 2.7.16 (default, Apr 12 2019, 15:32:40)
[GCC 4.2.1 Compatible Apple LLVM 10.0.1 (clang-1001.0.46.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pwn
>>> pwn.asm("xor eax,eax")
'1\xc0'
>>>

如果報錯,那麼首先檢查一下路徑填的對不對:

import sys
list = sys.path
print(list)
#sys.path.append('/usr/local/Cellar/pwntools/3.12.2/libexec/lib/python2.7/site-packages')
#print(list)
from pwn import *

如果沒問題,那麼你需要安裝二進制工具binutils:
還是用brew:

➜ ~ brew install https://raw.githubusercontent.com/Gallopsled/pwntools-binutils/master/osx/binutils-amd64.rb

安裝完之後就好啦。

另附Mac上python的環境變量:
我用的ohmyzsh,所以環境變量在~/.zshrc中配置:

#brew安裝的python2和python3

export PATH="/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/bin:${PATH}"
export PATH="/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"

#系統的python,不同版本系統會不一樣,我這裏是最新的10.14.5,自帶2.7.10
#不要跟brew安裝的python2同時加,二選一

export PATH="/System/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章