Python Penetration Testing
加油开心
你好呀
展开
-
构建SSH僵尸网络
每个单独的僵尸或client都能连接上某台肉鸡以下实现了三台主机登录一台肉鸡这三台主机分别实例化三个不同的Client对象并加到数组中然后通过函数botnetCommand读取用户输入的命令并通过数组的Client对象调用send_command函数三台主机并且每一台主机发送2条命令所以最后又6条命令返回信息#!/usr/bin/python# -*- coding: utf...原创 2019-11-07 01:50:25 · 467 阅读 · 1 评论 -
用pxssh暴力破解SSH密码
运行以下程序之前你需要新建一个文件pass.txt里面存密码然后命令提示符输入python 程序路径 -H 127.0.0.1 -u root -F pass.txt程序大致意思是先获取用户输入的三个参数并分别存到3个变量中读取文件第一行,并获得一个信号量,然后开启5个线程测试一个密码测试密码的过程对于2个特殊异常做了特殊处理然后释放信号量重复上述步骤全局布尔变量Foun...原创 2019-11-07 01:49:52 · 277 阅读 · 0 评论 -
利用pexpect登录SSH服务器
运行下面脚本之前你需要先开启ssh服务service ssh start#!/usr/bin/python# -*- coding: utf-8 -*-import pexpectPROMPT = ['# ', '>>> ', '> ','\$ ']def send_command(child, cmd): #发送命令 child.send...原创 2019-11-07 01:49:18 · 747 阅读 · 1 评论 -
TCP全连接多线程扫描判断目标开放端口
//命令行运行格式python 文件路径 -H 192.168.43.135 -p 21,25,3306,8080这种方法是通过完整的三次握手来去确定目标端口是否可用acquire()是给线程加信号量,加信号量后其余线程只能等待release()是释放信号量的,这时其余线程才开始工作#!/usr/bin/python# -*- coding: utf-8 -*-import o...原创 2019-11-06 02:36:30 · 539 阅读 · 0 评论 -
在FTP服务器上搜索网页
这个其实就是判断目标FTP服务器是否存在php和htm文件和asp文件//////////////////////////运行FTP服务器from pyftpdlib.handlers import FTPHandlerfrom pyftpdlib.servers import FTPServerfrom pyftpdlib.authorizers import DummyAutho...原创 2019-11-05 01:13:01 · 407 阅读 · 0 评论 -
暴力破解FTP口令
///先启动FTP服务from pyftpdlib.handlers import FTPHandlerfrom pyftpdlib.servers import FTPServerfrom pyftpdlib.authorizers import DummyAuthorizer authorizer = DummyAuthorizer()authorizer.add_user('p...原创 2019-11-05 01:12:31 · 771 阅读 · 0 评论 -
测试目标FTP服务器是否可以匿名登录
开启一个需要账号和密码的FTP服务器from pyftpdlib.handlers import FTPHandlerfrom pyftpdlib.servers import FTPServerfrom pyftpdlib.authorizers import DummyAuthorizer authorizer = DummyAuthorizer()authorizer.add_u...原创 2019-11-05 01:12:07 · 1403 阅读 · 0 评论 -
一次简单的破解zip加密
假设一个zip文件的加密密码是secret这个zip文件要和该程序在同一目录下extractall是解压不是压缩里面的path写解压后的路劲如果zip没有加密,你可以写pwd也可以不写pwd运行完程序后你会在当前程序目录看到一个文件名为1的文件表示解压后的文件import zipfiletry: with zipfile.ZipFile('1.zip') as z...原创 2019-10-26 20:13:15 · 880 阅读 · 0 评论 -
Zip文件破解机(完善前面的)
在当前目录新建dictionary.txt文件里面存的是用于验证zip文件密码命令行输入python 文件路径 -f zip文件名 -d dictonary.txtimport zipfileimport optparsefrom threading import Threaddef extractFile(zFile, password): try: ...原创 2019-10-26 20:12:33 · 277 阅读 · 0 评论 -
UNIX口令破解机(完善前面的)
从passwords文件中读取用户的口令这个口令是经过加密的然后我们需要从dictionary文件中获取一个个密码然后对这些密码进行加密,判断是否等于口令是的话这个密码就是该口令的明文记住破解的是用户的口令,用户的密码没有破解import cryptdef testPass(cryptPass): #需要该口令的明文和参数 #参数就是经过加密后口令的前2个字符...原创 2019-10-26 20:09:28 · 298 阅读 · 0 评论 -
检查有漏洞服务器的banner
下面这段代码是检查有漏洞服务器的banner你需要把很多banner提前存到一个文件文件中这样就不用在程序中逐一使用if条件了这段代码2个IP地址对应的7个特定端口号代码的储存位置和文本文件要在同一个目录下import socketimport osimport sysdef retBanner(ip, port):#连接上那个服务器#并获取返回值 try: ...原创 2019-10-26 20:07:09 · 1130 阅读 · 0 评论 -
批量扫描IP地址
import subprocess as subfor i in range(1,256): result = sub.call("ping 129.168.0."+str(i)) print(result)最后的结果的缺点就是每一个dos窗口都是ping,你关闭了一个另一个dos窗口就自动打开了...原创 2019-09-25 15:37:14 · 1289 阅读 · 0 评论 -
初学TCP和UDP一些总结
#Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求#Socket非常类似于电话插座。以一个国家级电话网为例,电话的通话双方相当于相互通信的2个进程,区号是#它的网络地址;区内一个单位的交换机相当于一台主机,主机分配给每个用户的局内号码相当于Socket号。任#何用户在通话之前,首先要占有一部电话机,相当于申请一个Socket;同时要知道对方的号码,相当于对方有...原创 2019-09-10 13:54:26 · 94 阅读 · 0 评论 -
测试服务器是否存在漏洞
#测试某个FTP服务是否存在漏洞#将响应结果与一些已知存在漏洞的FTP服务器版本的banner比较import socketimport sysimport osdef retBanner(ip,port): try: socket.setdefaulttimeout(2) s = socket.socket() s.connect((ip,port)) banner ...原创 2019-09-10 13:47:23 · 700 阅读 · 0 评论 -
UNIX口令破解机
#以下需要在Linux系统运行import cryptdef testpass(cryptpass): salt = cryptpass[0:2]#取前两个,没用的,他们会置于加密后密码的前面,我们不需要dictFile = open("dictionary.txt",'r')#存了所有简单的密码,一一试探for word in dictFile.readlines(): word =...原创 2019-09-10 13:46:07 · 242 阅读 · 0 评论 -
UDP服务端和客户端
#记住:必须要先运行服务端#服务端import socket port = 8081s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #从给定的端口,从任何发送者,接收UDP数据报 s.bind(("",port)) print ('waiting on port:',port) while True: data,add...原创 2019-09-10 13:45:32 · 250 阅读 · 0 评论 -
TCP和UDP
#Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求#Socket非常类似于电话插座。以一个国家级电话网为例,电话的通话双方相当于相互通信的2个进程,区号是#它的网络地址;区内一个单位的交换机相当于一台主机,主机分配给每个用户的局内号码相当于Socket号。任#何用户在通话之前,首先要占有一部电话机,相当于申请一个Socket;同时要知道对方的号码,相当于对方有...原创 2019-09-10 13:44:49 · 143 阅读 · 0 评论 -
TCP服务端和客户端
#记住:必须要先运行服务端#运行以下代码#这是服务端import socketimport threadingbind_ip="任意IP"bind_port=9999server=socket.socket(socket.AF_INET,socket.SOCK_STREAM)server.bind(("",bind_port))server.listen(5)print("[...原创 2019-09-10 13:43:20 · 134 阅读 · 0 评论