记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

ROS破解密码与导出配置

ROS破解密码与导出配置

ROS配置的导入导出
1、使用export命令导出,使用import命令导入。
如:导出全部配置命令为:/export file=ros
导入配置命令:/import file=ros
导出防火墙配置的命令:/ip firewall export file=ros
此方法导出的配置是文本配置,默认文件后缀是 .rsc , 可以直接粘贴到ros终端中,可以直接修改,非常直观,方便备份恢复。但是此方法导出的配置不完整,比如密码会缺失,注意导入后检查下。
2、backup备份恢复系统
备份系统
/system/backup save name=ros
需要加密可以按键盘 Tab 键,设置加密参数。
恢复系统
/system/backup load name=ros
也可以使用winbox或者网页,在Files中操作
备份设置:files-->backup 再用ftp client download备份文件
恢复设置:ftp client upload 备份文件;files --> restore
此方法导出的配置是二进制文件,默认文件后缀是 .backup , 不能直接查看,是经过加密和压缩过得,可以直接恢复系统到备份状态。在保存过程中可以选择是否加密,可以设置加密密码,保密性和安全性高。
ROS破解密码
需求:ROS忘记密码或者ROS被黑,账号被修改,配置没有备份,无法导出或者查看。
清除ROS管理员密码方法:
ROS 5.X和 6.X 配置文件未加密(2.X 和 3.X 几乎没人用,未测试)
使用winpe或者linux启动盘加载ROS硬盘会发现硬盘有两个分区,一个是系统引导分区,一个是数据分区,稍微有点经验的都会看出来。数据分区的  /rw 目录就是ros配置文件所在的目录, /rw/store 即为配置文件所在的目录。只要删除 user.dat 和 user.idx 就可以删除系统的用户配置文件,也就是删除所有用户,启动时候自动检测配置文件,发现没有用户配置文件,系统会重建admin用户,没有密码,从而达到删除用户密码,不丢失其他配置的目的。
删除文件可以用winpe的diskgen软件,也可以使用 ubuntu pe 打开store目录提示没有权限,用右键,以root身份打开既可以正常操作。
ROS 7.X 配置文件加密
在ROS 7.X中,store目录就没有分开的配置文件了,取代它们的是 cfg.0001 这样一个cfg开头的配置文件,等于是把以前ros中各个菜单的配置文件整合到一个文件中了。不存在单独的配置,也就没有了 user.dat 和 user.idx ,无法实现删除用户清除密码。要想实现清除密码,就需要破解这个配置文件。
破解过程:
1、使用winpe或者linux livecd启动主机,导出 cfg.0001 到u盘或者电脑上。
2、虚拟机安装 MikroTikPatch 下载的ROS 7.X ,此版本破解了ROS内核,可以通过telnet命令直接查看整个磁盘。
3、安装好的破解ROS 7.X 无需任何配置,直接使用winbox上传 cfg.0001 到Files的文件管理器中,然后终端输入以下命令
XML/HTML代码
  1. Telnet到ros中
  2. /system/telnet 127.0.0.1
  3. 用户名:devel 密码和系统admin密码一样
  4. 删除系统配置
  5. rm /flash/rw/store/cfg*
  6. 把需要破解的配置文件替代系统配置
  7. cp /flash/rw/disk/cfg.0001 /flash/rw/store
  8. 退出telnet
  9. exit
  10. 导出系统备份文件
  11. /system/backup save name=ros
或者通过Files的Backup备份,然后复制到本地电脑。
3、破解ROS配置文件
以下用Alpine系统为例,其他系统同样原理操作
XML/HTML代码
  1. apk add python3 py3-pip git
  2. git clone https://github.com/BigNerd95/RouterOS-Backup-Tools.git
  3. 或者
  4. git clone https://mirror.ghproxy.com/https://github.com/BigNerd95/RouterOS-Backup-Tools.git
  5. python3 -m venv .venv
  6. source .venv/bin/activate
  7. cd RouterOS-Backup-Tools/
  8. pip install cryptography
使用示例:
查看备份文件信息
./ROSbackup.py info -i MikroTik.backup
解密
将加密备份转换为纯文本备份
./ROSbackup.py decrypt -i MikroTik-encrypted.backup -o MikroTik-plaintext.backup -p password
加密
将纯文本备份转换为加密备份
./ROSbackup.py encrypt -i MikroTik-plaintext.backup -o MikroTik-encrypted.backup -e AES -p password
解压
从给定目录中的纯文本备份中提取所有 IDX 和 DAT 文件
./ROSbackup.py unpack -i MikroTik-plaintext.backup -d unpacked_backup
打包
将给定目录中的所有 IDX 和 DAT 文件打包到纯文本备份中
./ROSbackup.py pack -d unpacked_backup -o MikroTik-plaintext.backup
破解方法2:
以Alpine系统为例:
XML/HTML代码
  1. #安装cargo  
  2. apk add cargo  
  3. #拉取代码(国外)  
  4. git clone https://github.com/marcograss/routerosbackuptools.git  
  5. #拉取代码(国内)  
  6. git clone https://mirror.ghproxy.com/https://github.com/marcograss/routerosbackuptools.git  
  7. cd routerosbackuptools  
  8. #查看备份信息  
  9. cargo run -- info -i MikroTik.backup  
  10. #解密备份  
  11. cargo run -- decrypt -i MikroTik-encrypted.backup -o MikroTik-plaintext.backup -p password  
  12. #加密备份  
  13. cargo run -- encrypt -i MikroTik-plaintext.backup -o MikroTik-encrypted.backup -e AES -p password  
  14. #解包备份  
  15. cargo run -- unpack -i MikroTik-plaintext.backup -d unpacked_backup  
  16. #打包备份  
  17. cargo run -- pack -d unpacked_backup -o MikroTik-plaintext.backup  
  18. #使用wordlist字典暴力破解密码  
  19. cargo run --release -- bruteforce -i MikroTik-encrypted.backup -w wordlist.txt  
  20. cargo run --release -- bruteforce -i MikroTik-encrypted.backup -w wordlist.txt -p  
此项目无需python,使用Rust语言,命令看起来更加简单。
具体原理与操作步骤:如果是自己导出的无加密备份可以直接使用unpack解包,然后删除 user.dat 和 user.idx,再打包后就是无用户信息的备份,导入到任何一个ros中就可以轻松用admin空密码登录,看到详细配置。通过 ./ROSbackup.py info -i 命令可以看到文件是否加密,如果是加密的使用-p 带密码解密。
此方法仅适用于X86的主机,通过启动盘导出配置,如果是ARM的机器导不出来,也登陆不了,就只能从0开始配置了。整个操作原理就是通过启动盘导出系统内部的加密后的配置文件,然后通过破解ROS导入到路由内部,此时,不重启机器,用backup备份其实就是把机器内部配置cfg.0001转换成backup的备份文件,然后通过解密backup的备份文件,去除user部分的配置,得到一个没用user的备份文件,导入任何机器都可以看到配置。注意不能使用import命令导出配置,因为没有重启,机器还是刚安装系统没有配置状态,import导出的是正在运行的配置,backup导出的是cfg.0001的配置。简单来说就是我把启动需要加载的正常配置导入机器,利用backup命令转换成ROS可以识别备份配置文件,import导出当前配置肯定是空的。
注意:删除cfg.0001就相当复位利用,清除一切配置。cfg.0001是系统内部配置,重启自动识别加载,重启时候慎重,如果这个配置密码不清楚,启动后就无法登录。只有在重启前破解,清除密码才可以正常登录。以上7.X经过本人测试可以正常破解密码,过程稍微复杂,简单说就是以下几步:启动盘提取cfg.0001--导入到破解版ROS--导出备份转换成正常ROS可识别备份文件--用Linux解密解包--删除user配置--打包成无密码的备份文件--导入任何ROS恢复备份--无密码登录
经验:cfg文件是经过压缩的,导出后体积会增大很多,如果导出后的backup文件体积没有增大,就需要恢复到Ros验证下,如果配置没问题可以导入,就可以继续破解,如果导入重启后没有配置,那就是没有转换成功,不能继续破解。

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):