<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/ DTD/wml_1.1.xml">

<wml>
<head>
<meta http-equiv="cache-control" content="max-age=180,private" />
</head>
<card title="ROS破解密码与导出配置">
<p>
作者:<a href="index.php?action=showuser&amp;userid=1&amp;hash=">admin</a><br />时间:2024-09-05 15:59<br />分类:<a href="index.php?action=list&amp;cid=3&amp;hash=">电脑技术</a><br />内容:
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--&gt;backup 再用ftp client download备份文件


恢复设置：ftp client upload 备份文件；files --&gt; restore


此方法导出的配置是二进制文件，默认文件后缀是 .backup , 不能直接查看，是经过加密和压缩过得，可以直接恢复系统到备份状态。在保存过程中可以选择是否加密，可以设置加密密码，保密性和安全性高。






ROS破解密码


Github：https://github.com/elseif/MikroTikPatch


Github：https://github.com/BigNerd95/RouterOS-Backup-Tools


需求：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代码


    Telnet到ros中

    /system/telnet 127.0.0.1

    用户名：devel 密码和系统admin密码一样

    删除系统配置

    rm /flash/rw/store/cfg*

    把需要破解的配置文件替代系统配置

    cp /flash/rw/disk/cfg.0001 /flash/rw/store

    退出telnet

    exit

    导出系统备份文件

    /system/backup save name=ros







或者通过Files的Backup备份，然后复制到本地电脑。


3、破解ROS配置文件


以下用Alpine系统为例，其他系统同样原理操作




XML/HTML代码


    apk add python3 py3-pip git

    git clone https://github.com/BigNerd95/RouterOS-Backup-Tools.git

    或者

    git clone https://mirror.ghproxy.com/https://github.com/BigNerd95/RouterOS-Backup-Tools.git

    python3 -m venv .venv

    source .venv/bin/activate

    cd RouterOS-Backup-Tools/

    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：


Github：https://github.com/marcograss/routerosbackuptools


以Alpine系统为例：




XML/HTML代码


    #安装cargo  

    apk add cargo  

    #拉取代码（国外）  

    git clone https://github.com/marcograss/routerosbackuptools.git  

    #拉取代码（国内）  

    git clone https://mirror.ghproxy.com/https://github.com/marcograss/routerosbackuptools.git  

    cd routerosbackuptools  

    #查看备份信息  

    cargo run -- info -i MikroTik.backup  

    #解密备份  

    cargo run -- decrypt -i MikroTik-encrypted.backup -o MikroTik-plaintext.backup -p password  

    #加密备份  

    cargo run -- encrypt -i MikroTik-plaintext.backup -o MikroTik-encrypted.backup -e AES -p password  

    #解包备份  

    cargo run -- unpack -i MikroTik-plaintext.backup -d unpacked_backup  

    #打包备份  

    cargo run -- pack -d unpacked_backup -o MikroTik-plaintext.backup  

    #使用wordlist字典暴力破解密码  

    cargo run --release -- bruteforce -i MikroTik-encrypted.backup -w wordlist.txt  

    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验证下，如果配置没问题可以导入，就可以继续破解，如果导入重启后没有配置，那就是没有转换成功，不能继续破解。


</p><p>
<a href="index.php?action=login&amp;hash=">立即登陆发表评论</a><br />
</p>
<p><a href="index.php?action=list&amp;hash=">返回日志列表</a><br /><a href="index.php?action=index&amp;hash=">返回主页</a></p>
</card>
</wml>
