一、准备kali环境
- 在kali官网下载虚拟机镜像,解压后得到这两个
- 打开vbox,点击新建虚拟电脑,起好名字选好系统类型后点击下一步,选择好所需内存(我配置了2G)后点击下一步,选择使用现有的虚拟硬盘,点击右边的按钮会弹出一个框,点击注册,在弹出的框中选择自己的vdi文件
这样就ok了 - kali默认的开机用户名和密码都是kali
二、准备python等软件环境
- 查看自己的python版本
- 然后需要安装pip,这里就有问题了,首先要使用root来操作,不然会没有权限
sudo su
passwd root
reboot
(教程参考:) - 开始安装pip,直接输入apt-get install python-setuptools python-pip会提示E:Unable to locate package报错,这时候需要编辑一下sources.list文件
(教程参考:)
然后再正常输入apt-get install python-setuptools python-pip就可以安装
去查版本,发现好像没装好,再装一次就可以了
- 现在可以正常用pip安装基于github的一些木块
pip install github3.py - 查查版本,没问题
三、网络基础
- 核心是python的socket模块
- 创建一个TCP客户端
常用代码:
import socket
target_host = “www.google.com”
target_port = 80
建立一个socket对象
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
连接客户端
client.connect((target_host, target_port))
发送一些数据
client.send(“GET / HTTP/1.1\r\nHost:google.com\r\n\r\n”)
接收一些数据
response = client.recv(4096)
print response
- 创建一个UDP客户端
常用代码:
import socket
target_host = “127.0.0.1”
target_port = 80
建立一个socket对象
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
发送一些数据
client.sendto(“AAABBBCCC”,(target_host,target_port))
接收一些数据
data,addr = client.recvfrom(4096)
print data
- 创建一个标准的多线程TCP服务器
- 取代netcat
进入的服务器没有安装netcat但是装了python,可以创建一个简单的客户端和服务器来传递想使用的文件,或者创建一个监听端让自己拥有控制命令行的操作权限
好累,看不懂代码,我决定不看代码了,开心地看别的