如何破解linux用户帐号密码二
转载
0x01
前言:
今天拿了个linux的主机,提下来了,以前提成root之后就没深入过,这次想着先把root密码破解出来;
以前交洞的时候只是单纯证明存在/etc/passwd和/etc/shadow,但从没管过里面的hash;
看网上教程也很多,我也记录一下我的学习成果吧。
0x02
大家都知道,linux系统中有一个用户密码配置文件 /etc/shadow ,里面存放着用户名以及一串密文:
形如:
1
2
|
root:$6$7vXyCOws$Hp/xoGf50Kov51cy83h6CTYoQerInkAFWWYZL22640N6P0kgy9Gfy4NVndDa1hNUevqR122E7ykmA1BIIOg0C.:16821:0:99999:7:::
用户名:加密密码:上次更改密码的时间:最小更改密码间隔:密码有效期限:密码过期提示时间:密码锁定期:账户有效期:保留字段
|
另外一个 /etc/passwd 文件是用户账户配置文件,只保存用户账户的基本信息,并不保存密码信息。
形如:
1
2
|
root:x:0:0:root:/root:/bin/bash
用户名:密码:用户id:组ID:GECOS:主目录:默认Shell
|
0x03
由于咱们要破解是root密码,则只需要把/etc/shadow的root的加密密码拿出来即可;
1
|
$6$7vXyCOws$Hp/xoGf50Kov51cy83h6CTYoQerInkAFWWYZL22640N6P0kgy9Gfy4NVndDa1hNUevqR122E7ykmA1BIIOg0C.
|
最后小数点不要漏掉,因为这些文件内容格式都是:分割的,其余的都是内容;
这里来解释一下$分割的各个部分的含义:
1
2
3
4
|
6:表示一种类型标记为6的密码散列;
7vXyCOws:加盐(Salt)值;
Hp/xoGf50Kov51cy83h6CTYoQerInkAFWWYZL22640N6P0kgy9Gfy4NVndDa1hNUevqR122E7ykmA1BIIOg0C.:hash值;
!具体也就是magic、salt、password
|
将这段加密密码保存到一个文件里,文件后缀.hash;
咱们这里保存为1.hash。
0x04
kali下的一款hash破解工具 hashcat ,网上说的天花乱坠,我这直接记录关于咱们破解root密码的具体用法,其他用法类似,具体百度吧;
hashcat据官网说牛逼得很,每秒最快可爆破80亿数据;
咱们这里利用他的暴力破解,就是常说的爆破,这也是得看字典;
具体命令:
1
|
hashcat -m 1800 -a 0 -o found.txt 1.hash 1.txt
|
解释一下:
1
2
3
4
5
|
-m 是指定那种加密类型,1800是SHA-512(Unix)的代号,具体--help来查看;
-a 是指定攻击模式,0代表Straight模式,使用字典进行破解尝试;
-o 是破解出来的信息输出结果文件,输出到found.txt文件中;
1.hash 是我们上面保存的加密密码文件;
1.txt 是我们的爆破密码,越大越精越好;
|
这里碰到了一点小问题,hash-identifier 来看root密码检查是 SHA-256 加密,但这个并不是我这台机子linux的加密方式,使用这个是不能开始爆破的;
但这可以先记住一点:
1
2
3
|
linux 的/etc/shadow文件中hash算法包括缺省的DES经典算法、MD5哈希算法($1)、Blowfish加密算法($2或$2a)和SHA哈希算法($5或$6)。
因此利用hashcat进行破解的参数也不同,比如MD5哈希算法($1),使用hashcat -m 500参数;
SHA哈希算法($5或$6),使用hashcat -m 1800 参数。
|
具体标记如下:
1
2
3
4
5
|
1. $0 = DES
2. $1 = MD5
3. $2a(2y) = Blowfish
4. $5 = SHA-256
5. $6 = SHA-512
|
这里可以直接看magic标记值来直接判断,这里是6,所以是SHA-512的magic值1800;
回车开始爆破。
0x05
拿本地操作一下,放了个6000小字典,里面放上了虚拟机root的密码;
可以看到,很快就爆破出来了,每秒近700次,还是挺快的;
结果会在当前目录生产两个文件found.txt和hashcat.pot;
里面内容一样,都是爆破出来的结果;
0x06
1.hashcat支持市面上存在的近乎全部的hash加密,–help可以看到;
2.在并不知道密文的情况下,我们可以先使用hash-identifier来帮助检测下,虽然有的不准确;
3.各种加盐(salt)的顺序,以及hash值的具体得来的方式不同,也会导致加密的类型产生差别;
如同:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
0 = MD5
10 = md5($pass.$salt)
20 = md5($salt.$pass)
300= md5(unicode($pass).$salt)
40 = md5($salt.unicode($pass))
3300 = MD5(Sun)
3500 = md5(md5(md5($pass)))
3610 = md5(md5($salt).$pass)
3710 = md5($salt.md5($pass))
3720 = md5($pass.md5($salt))
3800 = md5($salt.$pass.$salt)
3910 = md5(md5($pass).md5($salt))
4010 = md5($salt.md5($salt.$pass))
4110 = md5($salt.md5($pass.$salt))
4210 = md5($username.0.$pass)
4300 = md5(strtoupper(md5($pass)))
4400 = md5(sha1($pass))
....
|
4.这里linux的密码只看$分割,其余字符都是内容,有点 . 也得带上。
转载于:https://www.cnblogs.com/shengulong/p/7561748.html
如何破解linux用户帐号密码二相关推荐
- 增加计算机用户名和密码,win7系统如何新增用户帐号
Windows系统可以分配多个用户分别进行使用.那么win7系统如何新增用户帐号呢?学习啦小编分享了win7系统新增用户帐号的方法,希望对大家有所帮助. win7系统新增用户帐号方法一:进入控制面板增 ...
- 使用 OpenLDAP 集中管理用户帐号
关键字: OpenLDAP ReiserFS SCTP nmon 正则表达式 使用轻量级目录访问协议(LDAP)构建集中的身份验证系统可以减少管理成本,增强安全性,避免数据复制的问题,并提高数据的一致 ...
- 在AD中批量添加多个用户帐号
问题: 如何批量的创建帐号? 解决方案: 在利用CSVDE.EXE或LDIFDE.EXE来批量创建用户帐号 实验环境: Windows 2003 如果我们要想批量的创建帐号的话,我们可以首先利用文字编 ...
- mysql fulsh_MYSQL教程:MySQL用户帐号管理_MySQL
MySQL用户帐号管理主要用grant(授权)和revoke(撤权)两个SQL指令来管理.这两个指令实质是通过操作user(连接权限和全局权限).db(数据库级权限).tables_priv(数据表级 ...
- HexorBase 登陆、执行语句、数据库帐号密码破解
HexorBase Tool:整合了目前几大主流的数据库,包括登陆,执行语句,数据库帐号密码破解等功能. 安装HexorBase Tool,安装文件:hexorbase_1.0_all.deb 下载地 ...
- unix 服务器 密码修改,主流服务器UNIX操作系统用户帐号的设置.docx
主流办事器UNIX操纵系统用户帐号的设置 账号设置 HP-UX FreeBSD Solaris (SPARC) 密码文件 /etc/passwd/tcb/files/auth/r/root /etc/ ...
- linux建立用户帐号的命令,有关Linux创建用户命令的详细讨论
Linux系统用户的创建不同于windows系统,这里陈述一下Linux创建用户的命令.包括创建用户,修改密码,修改信息,新建群组. Linux创建用户命令1:创建新用户 useradd命令(也可以使 ...
- linux系统用户帐号管理
Hellow,我是jack,今天给大家分享的是linux 系统的账号管理.话不多说,让我们直接进入正题. 俗话说"花有百样红",所以我们每个人在使用计算机使也会有不同的方式或方法, ...
- 重装系统后服务器不提示用户密码,明明没有设置密码,重装系统后开机要求输入帐号密码咋办?...
原标题:明明没有设置密码,重装系统后开机要求输入帐号密码咋办? 时常有用户在重装系统后出现开机需要输入帐号密码的情况,其实这是由于Administrator管理员帐号被停用导致的,出现这情况只要进入安 ...
最新文章
- linux 程序收到sigsegv信号_信号
- python装饰器类-python_类装饰器
- switchhosts(本地域名解析)小工具使用
- Ajax学习(6)---服务器端脚本和程序中用 JSON 进行响应和回复
- ionic + cordova 使用 cordova-gallery-api 获取本地相册所有图片
- Caffe RPN:把RPN网络layer添加到caffe基础结构中
- 【牛客 - 551F】CSL 的神奇序列(推公式,猜结论,母函数)
- python sorted下标_Python学习教程(Python学习路线):第七天-字符串和常用数据结构
- 发生了未经处理的异常
- 东芝正式退出笔记本电脑业务!
- Python:程序生成Windows可执行文件/不显示命令执行窗口/无法生成exe报错TypeError: an integer is required (got type bytes)解决方法
- python 正则表达式1
- Kotlin Compose 标准组件
- Wordpress主题制作基础教程
- iOS开发企业版ipa分发
- IntelliJ IDEA运行内存设置
- 多元线性方程的python解法
- 188. 武士风度的牛
- Vue 中路由传参(动态路由匹配)
- SQL Server性能优化
热门文章
- ikun 潜入?疑似 B 站后台源码泄露
- new java.util.date_java.util.Date的替代品
- ctypealpha php_php中Ctype函数用法详解
- springboot+vue+element+mybatisplus项目(前端)
- 大学物理光学思维导图_头晕/眩晕问诊最全思维导图,赶紧收藏!
- 启动模拟器要20多分钟_有硬核开发者将Windows 10X模拟器镜像提取并在物理机上成功安装...
- react http请求_React组件的应用分析
- 怎么用计算机求浮动额,2015计算机一级考试MSOFFICE上机综合训练(5)
- mac xampp连接mysql数据库_在mac上如何使用终端打开XAMPP自带的MySQL
- python制作简单动画_用Tkinter Python制作简单动画