基于端口的弱口令检测工具--iscan
iscan: 基于端口的弱口令检测工具
亲手打造了一款基于端口的弱口令检测工具,使用python进行编写,主要可以用于渗透测试中常见服务端口弱口令的检测。目前支持以下服务:
系统弱口令:ftp、ssh、telnet、ipc$
数据库弱口令:mssql、mysql、postgre、mongodb
中间件弱口令:phpmyadmin、tomcat、weblogic
特点
- 命令行,兼容OSX/LINUX/WINDOWS/Python 2.7
- 内置弱口令字典,同时支持外部导入执行
- 支持多线程、线程可调控
- 支持中间件弱口令扫描
基本使用
1、地址格式
-h :指定ip地址,ip地址支持以下格式:
支持单个ip,如 iscan.py -h 10.9.10.201 --ssh
支持多个ip,如 iscan.py -h 10.9.10.201-10.9.10.205 --ssh //201-205 5个ip
iscan.py -h 10.9.10.201,10.9.10.205 --ssh //201、205 2个ip
网段地址,如 iscan.py -h 10.9.10.0/24 --ssh // 识别24结束的网段
文本导入,如 iscan.py -h 1.txt --ssh //导入1.txt,每行一个ip地址
2、支持的弱口令类型
系统弱口令:ftp、ssh、telnet、ipc$ 数据库弱口令:mssql、mysql、postgresql、mongodb 中间件弱口令:phpmyadmin、tomcat、weblogic
指定mysql进行弱口令检测:iscan.exe -h 10.9.10.201 --mysql
3、导入字典进行猜解
iscan默认已内置常见的弱口令,也可以从外部导入字典进行猜解
iscan.py -h 10.9.10.201 -u user.txt -s pwd.txt --ssh
-u: 指定用户字典-p:指定密码字典
4、可以指定端口,设置线程数
iscan支持指定端口、支持多线程
例如:
iscan.py -h 10.9.10.201 -p 2222 -t 20 --ssh
以20线程数,指定2222端口扫描ssh弱口令
-p:指定端口 -t:设置线程数
5、日志记录
在本目录下生成result.log日志记录扫描结果
测试截图
ipc$检测:
Mongodb检测:
PS:两年前写的工具,最后在2017年3月更新过一次,就一直遗忘在角落了。最近在整理以前的博客,又重新拾回了代码。
代码有攻击性,防止被恶意使用,就不放出来了,代码实现很简单,有时间的话,准备写一个系列:《手把手教你打造自己的弱口令扫描工具》。
Bypass
About Me
一个网络安全爱好者,对技术有着偏执狂一样的追求。致力于分享原创高质量干货,包括但不限于:渗透测试、WAF绕过、代码审计、安全运维。
- Golang语言goto语句
- 转--Golang语言语法汇总
- Oracle,MySQL迁移整合的问题总结(r10笔记第99天)
- MySQL修复表的简单分析(r11笔记第19天)
- Golang语言中的流程控制结构和函数详解
- Golang语言版的ip2long函数实例
- Oracle闪回原理-Logminer解读redo(r11笔记第17天)
- beego如何做到XSRF防护
- Golang语言-- gbk转utf8
- Golang 语言--linux 下 go语言 vim设置
- 南阳OJ----Binary String Matching
- Golang RSA加密解密程序
- HDUOJ--汉诺塔II
- Golang语言-操作json,注意json的嵌套、数组
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 在SAP Spartacus产品明细页面用outlet显示自定义数据
- 如何在SAP Spartacus自定义Component里消费数据
- 使用ConfigModule.withConfig替换SAP Spartacus标准Component
- pod 资源对象
- 在Java8的foreach()中使用return/break/continue
- JavaScript 覆盖对象字段级别
- Zabbix5.0 问题记录
- 「查缺补漏」巩固你的Nginx知识体系
- 超级帐本合约调用——fabric SDK Node调用TBaaS的合约
- TBaaS合约调用_fabric SDK Node 不使用Connection Profile
- helm安装、使用、实践
- 浅析asp .net core 中间件
- 玩转jenkins - 在自己的服务器上安装jenkins
- CPU有个禁区,内核权限也无法进入!
- Java bytecodes