kali怎么安装python3_kali下python安装pwntools工具 | kTWO-个人博客

摘要

本文讲述的是再kali下面的python2.7中安装pwntools工具,这个工具是打ctf必备工具也是解pwn必备工具,本文将一步步介绍如何安装成功。

0x01 pwntools介绍

pwntools从名字上看像是在解PWN题目使所用的工具,没错,确实使的,他使基于Python的,就是Python中的一个库,但是这个库很强大,里面包含了很多方法,比如连接可执行文件,进行读写通信,还可以生成shellcode以及将ams转化为shellcode。下面将仔细讲述这款工具的安装,这款工具在安装的时候会遇到坑,博主也是在论坛提问最终才找到解决方案。

0x02 基础环境

kali Linxu操作系统,其实只要是Linux就行,Ubuntu支持更好,注意操作系统位数,最好使X64的,因为在X32下会有些函数用不了。

Python2.7 ,这款工具对Python2.7的支持是最好的,当然也支持Python3.X,但是还是2.7版本更好一些。

pip工具,Python下面的一个安装工具,可以很方便的管理Python库,很久之前pwntools是不支持pip安装的,但是现在经过更新以及支持了,网上很多安装教程都是从gitHub下在安装包进行安装,有时候还需要安装依赖,现在完全不必要。

0x03 开始安装

使用如下命令进行pwntools的安装:

root@kTWO:~# pip install pwntools

1

root@kTWO:~# pip install pwntools

这个过程可能会很漫长,最后会提示Successful,毫无报错,下面我们来使用一下。

导入pwn包:

root@kTWO:~# python

Python 2.7.15+ (default, Aug 31 2018, 11:56:52)

[GCC 8.2.0] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> from pwn import *

1

2

3

4

5

root@kTWO:~# python

Python2.7.15+(default,Aug312018,11:56:52)

[GCC8.2.0]onlinux2

Type"help","copyright","credits"or"license"formoreinformation.

>>>frompwnimport *

当我们按下回车的时候,我尼玛,好多错误:

Traceback (most recent call last):

File "", line 1, in

File "/usr/local/lib/python2.7/dist-packages/pwn/__init__.py", line 4, in

from pwn.toplevel import *

File "/usr/local/lib/python2.7/dist-packages/pwn/toplevel.py", line 20, in

import pwnlib

File "/usr/local/lib/python2.7/dist-packages/pwnlib/__init__.py", line 43, in

importlib.import_module('.%s' % module, 'pwnlib')

File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module

__import__(name)

File "/usr/local/lib/python2.7/dist-packages/pwnlib/dynelf.py", line 56, in

from pwnlib import elf

File "/usr/local/lib/python2.7/dist-packages/pwnlib/elf/__init__.py", line 9, in

from pwnlib.elf.corefile import Core

File "/usr/local/lib/python2.7/dist-packages/pwnlib/elf/corefile.py", line 84, in

from pwnlib.elf.elf import ELF

File "/usr/local/lib/python2.7/dist-packages/pwnlib/elf/elf.py", line 54, in

from elftools.elf.enums import ENUM_P_TYPE

ImportError: cannot import name ENUM_P_TYPE

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

Traceback(mostrecentcalllast):

File"",line1,in

File"/usr/local/lib/python2.7/dist-packages/pwn/__init__.py",line4,in

frompwn.toplevelimport *

File"/usr/local/lib/python2.7/dist-packages/pwn/toplevel.py",line20,in

importpwnlib

File"/usr/local/lib/python2.7/dist-packages/pwnlib/__init__.py",line43,in

importlib.import_module('.%s'%module,'pwnlib')

File"/usr/lib/python2.7/importlib/__init__.py",line37,inimport_module

__import__(name)

File"/usr/local/lib/python2.7/dist-packages/pwnlib/dynelf.py",line56,in

frompwnlibimportelf

File"/usr/local/lib/python2.7/dist-packages/pwnlib/elf/__init__.py",line9,in

frompwnlib.elf.corefileimportCore

File"/usr/local/lib/python2.7/dist-packages/pwnlib/elf/corefile.py",line84,in

frompwnlib.elf.elfimportELF

File"/usr/local/lib/python2.7/dist-packages/pwnlib/elf/elf.py",line54,in

fromelftools.elf.enumsimportENUM_P_TYPE

ImportError:cannotimportnameENUM_P_TYPE

emmmmm此处一脸懵逼

blank.gif

我也是既Google又百度,结果全网都没有和我遇到相似问题的,我又下载了kali32位版本的虚拟机,结果仍然也是这样,真的没办法了,去了某论坛求助,经过几天的悬赏,终于有人帮我解决了。相信很多人都会遇到和我相似的问题。

0x04 报错解决方案

根据报错我们定位到文件:/usr/local/lib/python2.7/dist-packages/pwnlib/elf/elf.py

使用编辑器,将文件中所有的ENUM_P_TYPE改为ENUM_P_TYPE_BASE,一般在54行和1749行。

问题解决,重新运行。

blank.gif

改成上面图片中的样子即可。

重新运行脚本,发现不会报错了,下面试一下进本的函数是否可用:

Python

root@kTWO:~# python

Python 2.7.15+ (default, Aug 31 2018, 11:56:52)

[GCC 8.2.0] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> from pwn import *

>>> asm('xor eax,1')

'\x83\xf0\x01'

1

2

3

4

5

6

7

root@kTWO:~# python

Python2.7.15+(default,Aug312018,11:56:52)

[GCC8.2.0]onlinux2

Type"help","copyright","credits"or"license"formoreinformation.

>>>frompwnimport*

>>>asm('xor eax,1')

'\x83\xf0\x01'

我们发现asm()函数可以正常执行。这说明我们的安装暂时是没有问题的。

0x05 补充

如果上面的方法你仍然无法安装可尝试先安装下面的依赖:

git clone https://github.com/aquynh/capstone

cd capstone

make

1

2

3

gitclonehttps://github.com/aquynh/capstone

cdcapstone

make

等到编译完成后执行安装命令即可

make install

1

makeinstall

然后尝试重新安装

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值