长亭百川云 - 文章详情

Linux破解root密码---精读篇(值的收藏)

电子物证

78

2024-07-27

Linux破解root密码---精读篇(值的收藏)


图片来源:福建省·福州市·鼓楼区·三坊七巷


【前言】

    

    忘记密码,真的是在生活中在常见的不过的事情了,不知道宝子们平时是如何保存自己的密码,或者是如何设计自己的密码,才不会让在需要的时候忘记,但各种密码实在太多,时间一久,忘记是在正常不过的事情了。

    在Linux中,忘记root密码还是可以重置或者是破解的,通过rd.break内核参数或者init=/bin/bash采用bash环境来处理即可,本篇小编则为大家娓娓道来。

【目录】

一 使用rd.break破解root密码

二 破解root密码的原理解释

三 优化修改密码后的启动时间

**四 使用bash破解密码
**

**五 总结
**

一 使用rd.break破解root密码

    开机启动,显示如下界面

    按e进入

    找到加载linux内核的行,在末尾添加rd.break,然后按住Ctrl+x键,开始启动

    简单的查看

    发现根目录下边与原来的系统不一样,因为,rd.break是RAM disk里边的操作状态,因此,不能直接获取原本Linux系统操作环境,所以我们还需chroot的支持,更由于SELinux的问题,还需要加上/autorelabel的操作来搞定root密码。

    **重要提示:**上图中的输入必须全部正确无误,否则修改失败。

    系统等待的时间较长(2~3)分钟(原理见本篇2.3小节)

    进入登录界面,使用root用户并输入新密码登录成功。

二 破解root密码的原理解释

    2.1 修改root密码需要使用内核参数rd.break

    2.2 chroot用来切换根目录,上文中则切换到/sysroot目录下

    2.3 /autorelabel的作用,因为在rd.break的RAM disk环境下,系统没有SELinux的,而刚才已经修改了/etc/shadow文件(这个文件是用来保存密码)

[root@centos ~]# grep root /etc/shadow
root:$6$x6qUPUTp$YY7HHotjTVNdIeZUtdZO/D2aEuWRdEBnMR3kMRQtQRettFArathpDvi1ERqWyJO.znZxDpZ7By0RqBHHv.EAC0:19869:0:99999:7:::

    此时,这个文件的SELinux安全上下文的特性将会被取消,如果我们没有让系统启动时自动恢复SELinux的安全上下文,那么我们的系统将无法登录,加上/autorelabel就是要让系统重新启动的时重新写入SELinux的类型到每个文件中,因此会花费较长的时间。

    当然,此时的SELinux为Enforceing模式。

    如果以上的解释过于难理解,小编为宝子们想到一种简单且容易的,你家大门的密码从123被你修改为了1234,但你告诉自己,我们家的密码就是1234,没有谁动过的,必须将刚才的操作从记忆中抹除,装着一切都没有发生过。

    说到这里,小编真的有很多想法写出来,比如SELinux是个什么?如果root密码都可以随意修改,那么还有什么安全可言,我家的三瓜两枣被人拿走什么时候自己都不知道,或者糟糕的家伙破解密码进来给系统搞几个漏洞,这不就是糟糕开门糟糕到家了。好了,言归正传,接下来聊聊修改密码后优化启动时间的问题。

三 优化修改密码后的启动时间

    当前系统的SELinux模式为Enforcing

[root@centos ~]# cat /etc/selinux/config
 
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
 #     mls - Multi Level Security protection.
SELINUXTYPE=targeted
 [root@centos ~]# getenforce
 Enforcing

    前文中我们已经知道,启动时间长就是SELinux造成的,那么,我们就从这个地方入手。

图1

图2

图3

图4

    此处无解释,相信宝子们可以理解,真的真的要认真理解呀!融会贯通,成为自己的知识。

    重启发现时间确实快了不少,就是正常reboot的节奏,登录进来后,做如下操作。

[root@centos ~]# getenforce
 Permissive
[root@centos ~]# restorecon -Rv /etc   #修改/etc下的文件
restorecon reset /etc/selinux/config context system_u:object_r:unlabeled_t:s0->system_u:object_r:selinux_config_t:s0
restorecon reset /etc/shadow context system_u:object_r:unlabeled_t:s0->system_u:object_r:shadow_t:s0
[root@centos ~]# setenforce 1   #将Permissive修改为Enforcing
[root@centos ~]# getenforce
 Enforcing
[root@centos ~]# vim /etc/selinux/config #修改配置文件如下保存退出
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing  #将Permissive修改为enforcing
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
 #     mls - Multi Level Security protection.
SELINUXTYPE=targeted

四 使用bash破解密码

    

    前文中我们在从RAM disk环境切换到根系统目录,本小节讲的是直接提供一个bash环境**【init=/bin/bash】**,不需要root密码而具有root权限,当然,这中环境只能用来修复,具体操作如下:

    我们做简单的查看

    接着做如下处理,还里依旧是一个字符也不能错,注意此时从新挂载的地方发生变化。

    强制关机

    开机进入登录界面

    来到登录界面,使用root用户和新的密码登录即可

五 总结

    

    感谢宝子们认真读完此篇,真的是泰酷辣!接下来需要宝子们在心中默默回忆一遍,看是否还能想起来,这样在修改密码的时候就能变换出不同的操作,此篇还有优化空间,这里就不展开说啦,留下给宝子们来优化。

    

-****--结束

_点赞

关注

分享

**
宝子******_****如果觉得还OK,可以动动可爱的小手分享__给身边的好朋友!我们一起进步,每一个点赞关注分享都是小编前进的动力!


【往期回顾】

Linux命令行配置临时Ipv4---终结篇

Linux启动失败进入grub界面解决方式

Linux中逻辑卷-卷组-物理卷之间的关系

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备2024055124号-2