SSH弱口令爆破服务器
创始人
2024-09-26 16:23:37
0

一、实验背景

1、概述

使用kali的hydra进行ssh弱口令爆破,获得服务器的用户名和口令,通过 ssh远程登录服务器。

2、实验环境

kali攻击机:192.168.1.107
centos服务器:192.168.1.105

二、前置知识

1、centos设置用户并设置弱口令

centos查看用户名 cat /etc/passwd

centos查看密码cat /etc/shadow

centos查找系统中某个用户的密码可以使用cat /etc/shadow|grep "用户名"

  • centos创建用户xiaodi
#添加新用户xiaodi adduser xiaodi  #查看centos系统的用户名 cat /etc/passwd xiaodi:x:1001:1001::/home/xiaodi:/bin/bash xiaodi->用户名 x     ->决定是否需要密码登录 1001  ->用户ID,系统通过用户ID识别用户,用户通过用户名登录 1001  ->组ID /home/xiaodi->用户家目录,每次切换用户时都会进入对应的家目录 /bin/bash->bash shell应用层到内核通过shell翻译传送
  • 设置弱口令密码123456
#为用户小迪设置密码 passwd xiaodi  #查看系统用户的密码 [root@bogon ~]# cat /etc/shadow root:$5$tsAxUaqpYg55Y2$LX0He23sL/sMtQ/NGDh8JMhFH/Sf3Edxt6UXp./tI.A::0:99999:7::: bin:*:18353:0:99999:7::: daemon:*:18353:0:99999:7::: adm:*:18353:0:99999:7::: lp:*:18353:0:99999:7::: sync:*:18353:0:99999:7::: shutdown:*:18353:0:99999:7::: halt:*:18353:0:99999:7::: mail:*:18353:0:99999:7::: operator:*:18353:0:99999:7::: games:*:18353:0:99999:7::: ftp:*:18353:0:99999:7::: nobody:*:18353:0:99999:7::: systemd-network:!!:19802:::::: dbus:!!:19802:::::: polkitd:!!:19802:::::: libstoragemgmt:!!:19802:::::: colord:!!:19802:::::: rpc:!!:19802:0:99999:7::: saned:!!:19802:::::: gluster:!!:19802:::::: saslauth:!!:19802:::::: abrt:!!:19802:::::: setroubleshoot:!!:19802:::::: rtkit:!!:19802:::::: pulse:!!:19802:::::: radvd:!!:19802:::::: chrony:!!:19802:::::: unbound:!!:19802:::::: qemu:!!:19802:::::: tss:!!:19802:::::: sssd:!!:19802:::::: usbmuxd:!!:19802:::::: geoclue:!!:19802:::::: ntp:!!:19802:::::: gdm:!!:19802:::::: rpcuser:!!:19802:::::: nfsnobody:!!:19802:::::: gnome-initial-setup:!!:19802:::::: sshd:!!:19802:::::: avahi:!!:19802:::::: postfix:!!:19802:::::: tcpdump:!!:19802:::::: root123:$5$tsAxUaqpYg55Y2$LX0He23sL/sMtQ/NGDh8JMhFH/Sf3Edxt6UXp./tI.A:19802:0:99999:7::: nginx:!!:19802:::::: guacd:!!:19802:::::: mysql:!!:19802:::::: xiaodi:$1$kXuam.tR$YGOwuwgOk3CO6BGxG07uV1:19962:0:99999:7:::

登录名:xiaodi 口令($1$kXuam.tR$YGOwuwgOk3CO6BGxG07uV1):字段存放的加密后的用户口令,如果为空表示登录时不需要口令;如果为“*”表示账号被锁定;如果为“!!"表示密码以过期。

$6开头表示加密方式为SHA-512,$1开头表示加密方式为MD5,$2开头表示加密方式为Blowfish,$5开头表示加密方式为SHA-256. $kXuam.tR表示加密算法所加的盐值为kXuam.tR $YGOwuwgOk3CO6BGxG07uV1表示加密算法得到的密文是YGOwuwgOk3CO6BGxG07uV1

最后一次修改时间19962:表示从某个时刻起,到用户最后一次修改口令 的天数,时间七点对于不同系统可能不一样,如在SCOLinux中,这个时间七点是1970年1月1日。

最小时间间隔0:表示两次修改口令之间所需的最小天数

最大时间间隔99999:表示口令保持有效的最大天数

警告时间7:表示从系统开始 警告用户到用户密码正式失效之间的天数。

不活动时间():表示用户没有登录活动 但账号仍能保持有效的最大天数。

失效时间():字段给出的是一个绝对天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法账号,也就不能再用来登录了。

保留字段()

shadow文件解密:

shadow文件的MD5密码破解_shadow密码解密-CSDN博客

2、kali上上传暴力破解的字典

3、centos支持ssh并追踪日志

  • 确保ssh登录centos:
  • 查看ssh进程是否被监听:netstat -antpl 命令会列出系统上所有 TCP 连接及其状态、监听的端口,以及使用这些端口的进程及其 PID。
    netstat -antpl|grep 22 #参数含义: #-a:显示所有连接和监听的端口。 #-n:以数字格式显示地址和端口号,而不是尝试解析为主机名或服务名。 #-t:仅显示 TCP 连接。 #-p:显示使用每个连接或端口的程序的进程标识符 (PID) 和名称。 #-l:仅显示监听状态的端口。

  • 对/var/log/secure文件进行追踪(操作系统的登录日志记录文件,如果有密码错误,用户名错误等事件都会记录)
    要在kali上准备有弱口令爆破的字典,将windows的字典上传到kali

三、开始爆破

1、使用hydra进行弱口令爆破

sudo hydra -l xiaodi -P top500.txt ssh://192.168.1.105  #命令含义 #hydra:工具名,用于破解密码。 #-l xiaodi:指定使用用户名 xiaodi 进行尝试。 #-P top500.txt:指定密码字典文件 top500.txt,从中尝试密码。 #ssh://192.168.1.105:指定目标 IP 地址及服务类型 (SSH)。192.168.1.105是centos的IP地址。

爆破成功:

2、kali通过爆破的密码登录centos

四、centos日志分析

通过对secure分析并统计出哪个IP地址对centos进行了爆破,尝试了多少次爆破
分析哪条日志是登录成功的。

1、cat /var/log/secure 查看登录

cat /var/log/secure

2、grep过滤登录失败的日志

grep failure /var/log/secure

3、去除冗余信息,保留IP地址

因为上述过滤出的内容中包含有一些我们不需要的信息

grep "pam_unix(sshd:auth): authentication failure; " /var/log/secure | awk '{print $14}' #awk '{print $14}'意思是过滤出这些行的第14个字符

过滤掉前面的内容,只保留IP地址

grep "pam_unix(sshd:auth): authentication failure; " /var/log/secure | awk '{print $14}' | awk -F = '{print $2}'  #`awk -F= '{print $2}'`:用 `=` 作为分隔符,提取用户名字段的值

4、 统计暴力破解失败次数

这里我只使用kali这台服务器爆破过所以只有这一个IP,统计的次数就是这个IP爆破失败的次数。

但是如果有多个服务器尝试爆破,这里统计出的就是所有这些爆破过的服务器总的爆破失败的次数;如果有多个IP的情况下,可使用sort函数进行排序,然后使用uniq命令进行汇总。

(1)排序

grep "pam_unix(sshd:auth): authentication failure; " /var/log/secure | awk '{print $14}' | awk -F= '{print $2}'| sort

(2)分类

grep "pam_unix(sshd:auth): authentication failure; " /var/log/secure | awk '{print $14}' | awk -F= '{print $2}'| sort | uniq

(3)计数

grep "pam_unix(sshd:auth): authentication failure; " /var/log/secure | awk '{print $14}' | awk -F= '{print $2}'| sort |uniq -c

5、分析哪条日志是登录成功的

相关内容

热门资讯

安卓pe系统怎么美化,打造个性... 你有没有发现,安卓PE系统虽然轻巧,但默认的界面总感觉有点单调呢?别急,今天就来教你怎么给安卓PE系...
安卓系统必备小说app,必备小... 你有没有发现,手机里装了那么多应用,但总有那么几个是不可或缺的?比如,对于爱看小说的你来说,一款好的...
安卓系统更新哪个好,哪个版本更... 你有没有发现,手机更新系统就像换了个新伙伴,让人心情大好呢!不过,市面上那么多安卓系统更新,哪个才是...
国外安卓定制系统排名,探索个性... 哇,你知道吗?在安卓的世界里,定制系统可是个香饽饽!各大厂商纷纷推出自己的特色系统,让手机体验更加丰...
安卓怎么更换外国系统,轻松更换... 你有没有想过给你的安卓手机换换口味,体验一下外国系统的魅力呢?没错,就是那种界面新颖、功能独特的国外...
智慧园林系统app安卓,打造绿... 智慧园林系统APP安卓版:你的绿色生活小助手 想象你在家中就能轻松管理自家的园林,无论是浇水、施肥还...
华为对应安卓系统版本,从EMU... 你知道吗?在科技圈里,华为和安卓系统版本的“爱情故事”可是相当精彩呢!华为,这个国产科技巨头,一直以...
手机卸载android安卓系统... 手机里的应用越来越多,是不是感觉内存不够用了?别急,今天就来教你怎么给安卓手机卸载那些不再需要的应用...
安卓系统怎么清理软件,轻松释放... 手机里的安卓系统是不是越来越慢了?是不是觉得软件堆得像个小山,清理起来头都大了?别急,今天就来给你支...
安卓系统谁家的好,安卓系统哪家... 说到安卓系统,这可是个热门话题呢!你有没有想过,这么多安卓手机品牌,到底哪家做得最好呢?今天,就让我...
漫漫视频安卓系统下载,畅享精彩... 亲爱的手机控们,你是否在寻找一款既能让你轻松追剧,又能让你畅游知识海洋的视频APP呢?今天,就让我带...
安卓电视系统测试软件,安卓电视... 你有没有想过,家里的安卓电视系统是不是真的那么完美?别急,今天就来带你一探究竟,揭开安卓电视系统测试...
安卓系统 更换启动图,个性化启... 你有没有发现,每次打开手机,那熟悉的启动画面总是那么亲切?但有时候,是不是也想给安卓系统来个换装大变...
安卓系统网游多开软件,安卓网游... 你有没有想过,在安卓系统上玩网游的时候,是不是有时候会想同时打开好几个账号,体验一下不同的游戏角色和...
安卓系统无法加载数据,安卓系统... 最近是不是遇到了安卓系统无法加载数据的烦恼?别急,让我来帮你一探究竟,解决这个让人头疼的问题!一、问...
哪些手机系统是安卓,引领智能手... 你有没有想过,手机的世界里,安卓系统就像是个大聚会,各种品牌、各种型号的手机都来参加,热闹非凡呢!今...
联想960安卓系统下载,下载与... 你有没有听说最近联想新推出的960安卓系统?这可是个大新闻呢!想象你的手机瞬间升级,各种新功能、新体...
主板装安卓系统教程,主板安装安... 你有没有想过,把安卓系统装在你的电脑上,是不是就像给电脑换了个新灵魂?想象你那台老电脑瞬间变成了一个...
安卓系统如何更新youtube... 你的YouTube更新指南:安卓系统如何高效更新在数字化时代,随着智能手机的普及和应用的不断更新,保...
安卓微软系统通用,安卓与微软系... 你有没有想过,为什么你的手机、电脑和游戏机有时候会闹别扭,不是这里卡壳就是那里不兼容呢?其实,这都是...