标签:FTP 用户名 server 密码 SSH print password user
我们的密码破解工具一共分为如下六个部分,前面四个部分我们都有在之前的文章中介绍过了
- 用户图形界面——GUI编程
- 密码字典获取——Excel文件读取
- 数据库类——MySQL、Oracle和SQL server
- 邮件类——IMAP、POP3和SMTP
- 文件传输类——FTP
- 运维类——SSH
今天我们再将剩下来的ssh、ftp和SQL server协议的登录过程模拟出来看一看。
SSH登录验证
SSH的登录需要我们安装一个paramiko第三方模块,安装命令:
pip install paramiko
我们的登录验证代码是这样的
import paramiko server_ip = '192.168.106.1' port = 22 user = 'admin' password = 'admin' print("=======破解SSH协议========") ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) try: ssh.connect(hostname=server_ip, port=port, username=user, password=password) print("用户名:%s,密码:%s登录成功\n" % (user, password)) except: print("用户名:%s,密码:%s无法登录成功\n" % (user, password))
从代码中看出我们要验证SSH用户名密码需要四个参数:服务器地址、服务器端口、用户名和密码。输出用户名密码的验证结果
FTP登录验证
FTP连接可以直接使用python内置模块——ftplib,连接过程编码如下:
import ftplib server_ip = '127.0.0.1' port = 21 user = 'admin' password = 'admin' print("=======破解FTP协议========") ftp = ftplib.FTP() ftp.connect(server_ip, port) try: ftp.login(user, password) ftp.quit() print("用户名:%s,密码:%s登录成功\n" % (user, password)) except: print("用户名:%s,密码:%s无法登录成功\n" % (user, password))
从代码中看出我们要验证FTP用户名密码需要四个参数:服务器地址、服务器端口、用户名和密码。输出用户名密码的验证结果
SQL server登录验证
连接SQL server数据库需要我们安装第三方模块——pymssql,安装命令如下:
pip install pymssql
安装完成后,我们的用户名密码验证编码如下:
import pymssql server_ip = '192.168.106.100' port = '51502' user = 'sa' password = '123456' print("=======破解SQL server协议========") try: pymssql.connect(server_ip, user, password,port=port) print("用户名:%s,密码:%s登录成功\n" % (user, password)) except : print("用户名:%s,密码:%s无法登录成功\n" % (user, password))
同样是可以看到我们验证SQL server的用户名密码需要四个输入参数:服务器地址、服务器端口、用户名和密码。输出用户名密码的验证结果
总结
接下来我们同样总结一下这三个协议的输入输出参数。
经过两天的时间对协议的连接梳理,我们发现所有的协议破解都是需要四个输入参数:服务器地址、服务器端口、用户名和密码。但是对于邮件协议和其它网络协议不一致的地方在于它们的用户名需要符合特殊的格式。
这样梳理之后,我们发现我们的密码破解工具输入参数应该是五个,除了前面说的服务器地址、服务器端口、用户名和密码以外,再添加一个破解的协议类型。输出为破解结果。
标签:FTP,用户名,server,密码,SSH,print,password,user 来源: https://www.cnblogs.com/cainiaoxiaobaidexuexifenxiang/p/13308560.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。