kali linux Python 黑客编程1 开发环境

初始化

为什么要选择Python?

Python作为目前Linux系统下最流行的编程语言之一,对于安全工作者的作用可以和C++相提并论。Python提供了丰富的库供调用,丰富的第三方扩展模块。在网络应用,文本解析方面,Python编程有着其他语言无可比拟的优势。同时Python也是面向对象并且跨平台的语言,可以在linux/Unix、OSX、windows上无障碍运行。

1.1 查看PYTHON版本信息

Kali Linux默认已经安装了Python运行环境,运行下面的命令,可以查看当前Python版本。

python --version

1.2 PYTHON软件包安装

Python软件包安装,我们这里介绍三种方法,分别为手动,easy_install和pip安装。

1.2.1 手动安装

第一种方法是手动下载软件包,运行安装程序来安装。

比如我们想要使用Python-nmap组件去解析nmap的扫描结果,我们先手动下载安装包。

wget http://xael.org/pages/python-nmap-0.6.0.tar.gz

解压:

root@kali:~# tar xzf python-nmap-0.6.0.tar.gz

root@kali:~# ls

paros python-nmap-0.6.0 公共 视频 文档 音乐

phpmyadmin.sh python-nmap-0.6.0.tar.gz 模板 图片 下载 桌面

root@kali:~# cd python-nmap-0.6.0/

root@kali:~/python-nmap-0.6.0# ls

CHANGELOG gpl-3.0.txt MANIFEST.in nmap.html README.txt setup.py

example.py Makefile nmap PKG-INFO requirements.txt

root@kali:~/python-nmap-0.6.0#

运行setup.py,执行安装。

python setup.py install

root@kali:~/python-nmap-0.6.0# python setup.py install

/usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'

warnings.warn(msg)

running install

running build

running build_py

creating build

creating build/lib.linux-x86_64-2.7

creating build/lib.linux-x86_64-2.7/nmap

copying nmap/__init__.py -> build/lib.linux-x86_64-2.7/nmap

copying nmap/test_nmap.py -> build/lib.linux-x86_64-2.7/nmap

copying nmap/nmap.py -> build/lib.linux-x86_64-2.7/nmap

running install_lib

creating /usr/local/lib/python2.7/dist-packages/nmap

copying build/lib.linux-x86_64-2.7/nmap/__init__.py -> /usr/local/lib/python2.7/dist-packages/nmap

copying build/lib.linux-x86_64-2.7/nmap/test_nmap.py -> /usr/local/lib/python2.7/dist-packages/nmap

copying build/lib.linux-x86_64-2.7/nmap/nmap.py -> /usr/local/lib/python2.7/dist-packages/nmap

byte-compiling /usr/local/lib/python2.7/dist-packages/nmap/__init__.py to __init__.pyc

byte-compiling /usr/local/lib/python2.7/dist-packages/nmap/test_nmap.py to test_nmap.pyc

byte-compiling /usr/local/lib/python2.7/dist-packages/nmap/nmap.py to nmap.pyc

running install_egg_info

Writing /usr/local/lib/python2.7/dist-packages/python_nmap-0.6.0.egg-info

1.2.2 EASY_INTALL 安装

easy_install 是Python setuptools组件中的一个模块,默认在kali2.0中该组件已经存在了。如果没有的话,我们可以使用apt-get 进行安装。

apt-get install python-setuptools

ok,下面我们使用easy_install 来安装Python的另一个组件包,可以用来对dpf进行解析和安全测试的pyPdf。

easy_install pyPdf

1.2.3 pip安装

默认情况,kali2.0 也已经安装了python-pip,如果你的系统没有的话,可以手动安装。

现在终端通过apt-get安装python-pip。

apt-get install python-pip

下面我们通过 pip 来安装github3模块。

pip install github3.py

root@kali:~/python-nmap-0.6.0# pip install github3.py

Downloading/unpacking github3.py

Downloading github3.py-0.9.5-py2.py3-none-any.whl (109kB): 109kB downloaded

Downloading/unpacking uritemplate.py>=0.2.0 (from github3.py)

Downloading uritemplate.py-0.3.0.tar.gz

Running setup.py (path:/tmp/pip-build-LRgVNm/uritemplate.py/setup.py) egg_info for package uritemplate.py

Requirement already satisfied (use --upgrade to upgrade): requests>=2.0 in /usr/lib/python2.7/dist-packages (from github3.py)

Installing collected packages: github3.py, uritemplate.py

Running setup.py install for uritemplate.py

Successfully installed github3.py uritemplate.py

Cleaning up...

现在我们介绍了三种python组件包的安装方法,下面我再来关注下开发工具。

1.3 开发工具

python开发可以用的开发工具很多,从简单的sublime text到比较重的eclipse+pydev,最近开始流行的vscode都可以。大家可以自行Google各种方法,我这里首先介绍的是一款商业软件WingIDE,不过它是用Python开发的。这款软件是目前使用过的,最优秀的Python开发工具。

首先我们到wingIDE的官网,下载安装包。

浏览器打开https://wingware.com/

点击get按钮。

找到对应的版本,取得链接。

使用wget下载。

wget http://wingware.com/pub/wingide/5.1.11/wingide5_5.1.11-1_amd64.deb

运行dpkg安装。

dpkg -i wingide5_5.1.11-1_amd64.deb

下面我们从菜单中访问下软件:

打开Wing IDE,遇到licence的提示框,可以暂时忽略。

下面再介绍另一款工具Aptana Studio,这不是专门的Python开发工具。首先到官网http://www.aptana.com/

点击下载。

选择独立版本,填写邮件信息。

点击下载按钮,保存文件。

解压文档,从终端切换到解压目录中。

执行Aptana exe文件。

会启动aptana 的窗口,首先要设置默认的工作目录。

点击ok。

下面我们配置python。

打开window菜单下的Preferences。

一路找到 Python Interpreter,在右侧我们添加python的文件目录。

点一下 Advanced Auto-Config按钮,会自动检测当前系统安装的Python。

这里我们暂且选择最新版,3.4版本。这里可以把2.7 和3.4 都添加上,起不同的名字,在新建项目的时候可以切换。

点击ok,再点击 外层窗口的ok。

现在可以新建一个python项目了。

打开file菜单,new—>Project.

选择PyDev Project,下一步。

选择填写配置项,finish。

选择yes。

在hello下添加新的python文件。

随便写点代码:

右键run as

在编辑器下方的控制台会输出结果。

1.4 小结

本文主要介绍了kali linux下python开发环境的搭建过程,其中开发工具大家可以选择自己喜欢的工具。下一篇文章为大家讲解一个Python黑客编程的入门案例,来自《Voilent Python》一书的zip暴力破解。

原文发布于微信公众号 - 玄魂工作室(xuanhun521)

原文发表时间:2016-05-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

如何自动地将代码从Git平台部署至组件容器

将源代码从Git平台部署至组件容器有很多种可以选择的方法,包括重新部署整个容器,通过卷即时重新部署,或者使用“git clone”的方法。但是,当这个过程自动化...

2389
来自专栏测试驿栈

Jmeter(三)_配置元件

Clear Cookies each Iteration:每次迭代请求,清空cookies,GUI中定义的任何cookie都不会被清除。

2972
来自专栏散尽浮华

php安全配置记录和常见错误梳理

通常部署完php环境后会进行一些安全设置,除了熟悉各种php漏洞外,还可以通过配置php.ini来加固PHP的运行环境,PHP官方也曾经多次修改php.ini的...

4797
来自专栏Youngxj

Emlog自动为文章标签添加该标签的链接

1544
来自专栏云原生架构实践

JHipster生成单体架构的应用示例

因为这个例子是生成单体架构的应用,所以这里选择默认选项Monolithic application,也就是单体架构的应用。

9792
来自专栏黑泽君的专栏

安装最新版本的Oracle公司的虚拟机软件 VirtualBox + 安装虚拟机 Windows XP 系统 + 安装 Oracle 11g 软件 + 出现 ERROR: ORA-12541: TNS

  VirtualBox的下载链接:https://www.virtualbox.org/wiki/Downloads

2571
来自专栏Theo Tsao

Linux用户和文件权限管理

本文包含: 用户管理、用户组管理、基本权限及管理命令、POSIX ACL 权限系统及其管理命令。

1314
来自专栏nice_每一天

理解 IntelliJ IDEA 的项目配置和Web部署

IDEA 中最重要的各种设置项,就是这个 Project Structre 了,关乎你的项目运行,缺胳膊少腿都不行。最近公司正好也是用之前自己比较熟悉的IDEA...

4902
来自专栏Java帮帮-微信公众号-技术文章全总结

Java文件上传与下载【面试+工作】

1.servlet 如何实现文件的上传和下载? 1.1上传文件 通过前台选择文件,然后将资源上传到(即新建一个文件)到发布的资源文件下面, 下载就是url 到发...

1.3K4
来自专栏偏前端工程师的驿站

打造高效前端工作环境-tmuxinator

前言  虽然tmux能让我们方便组织工作环境,但每次重新打开会话时都需要手动重新创建窗口、窗格和执行各种程序,能不能像VS那样以工程为单位保存窗口、窗格和各种所...

27210

扫码关注云+社区

领取腾讯云代金券