web-dev-qa-db-ja.com

シャドウファイルからLinuxハッシュを取得する

数日前にパスワードを変更したUbuntu12.04VirtualBoxマシンを持っています。もう一度マシンを使用したときに、パスワードを忘れてしまい、rootアクセスを取得できなくなりました。
johnで使用するためにシャドウファイルからハッシュを取得しようとしましたが、rootアクセスなしでは読み取ることができず、Metasploitとのセッションを取得しようとしても、Linuxハッシュを取得するオプションが見つかりません。 Metasploitでroot権限を取得できますか?また、VDIイメージとしてオフラインでディスクにアクセスできません。

また、試してみましたが、apt-getも使用できないため、johnをUbuntuにダウンロードできませんでした。マシンにはいくつかの重要なデータが含まれています。
では、Metasploitで、rootまたは何らかのツール(Windows用のsamdump2など)をブラウザーからダウンロードして、ライブシステムまたはエクスプロイトから手動でハッシュを取得する方法はありますか?

1
Mr.IT

最初によくある誤解に対処します。(実マシンまたは仮想)マシンに物理的にアクセスできる限り、(暗号化を除いて)データへのアクセスを妨げる方法はありません。

手順については、(詳細については、AskUbuntu.comの 紛失した管理者パスワードをリセットするにはどうすればよいですか? を参照してください)

リカバリを使用する

  1. あなたのVMブーツが押すとき Left shift 起動画面の直後にgrubメニューにアクセスし、詳細オプション...を選択し、リカバリモード
  2. しばらくすると、別のメニューが表示されます。そこで、矢印キーを使用して行rootを選択し、を押します。 enter
  3. マウントされた/パーティション読み取り/書き込みを作成します(読み取り専用の代わりに)

    mount -rw -o remount /
    
  4. これで、「失われた」ユーザーのパスワードを変更する準備ができました

    passwdyouruser

    新しいパスワードの入力を求められます(フィードバックは表示されません。キーストロークが認識されていないようです)。新しいパスワードを確認したら、マシンを再起動して飛行する準備が整います。

上記の手順が(何らかの理由で)失敗した場合は、ルート#2を使用できます。

ライブCD(画像)の使用-「chrootway」

  1. ライブCDのISOイメージを仮想CDドライブに挿入し、そこから起動して、メニューからUbuntuを試すを選択し、デスクトップの準備ができるまで待ちます
  2. ターミナルウィンドウを開きます
    • CTRL+ALT+T 実マシンまたはVirtualboxVM上
    • CTRL+ALT+space、 T VMWareVMで
  3. Sudo fdisk -lを使用して、使用可能なすべてのパーティションを表示し、どのパーティションに/システムが含まれているかを判断します(おそらくdev/sda1のようなもの)。
  4. そのパーティションを使用可能なパス(通常は/mnt)にマウントします

    Sudo mount /dev/sda1 /mnt
    
  5. いくつかのパスにアクセスする必要があります

    for d in dev sys run proc; do Sudo mount --bind /$d /mnt/$d; done
    
  6. ここで、新しい環境をアクティブ化します。これで、元のシステムでroot権限で操作できるようになります。

    Sudo chroot /mnt
    
  7. これで、「失われた」ユーザーのパスワードを変更する準備ができました

    passwdyouruser

使用 guestfs (ホストがLinuxまたはOSXの場合)

  1. libguestfs-toolsパッケージ、またはディストリビューション(ホスト上のディストリビューション)が呼び出すものをインストールします。ディストリビューションにこのパッケージがない場合は、 アップストリームからダウンロードしてください

  2. 仮想マシンのルートファイルシステムをホストにマウントします。インストールに必要なパスを調整します。

    mkdir ~/mnt
    guestmount -a /path/to/vm-image.vdi -m /dev/sda1 ~/mnt
    

    VirtualBoxを使用しているので、 最初にexport LIBGUESTFS_BACKEND_SETTINGS=force_tcgを実行 する必要があるかもしれません。

  3. 新しいパスワードハッシュを生成します 選択したパスワード用。

    mkpasswd -m sha-512
    
  4. ~/mnt/etc/shadowを編集して、rootユーザーのパスワードハッシュをmkpasswdによって生成されたものに変更します。

  5. VMのファイルシステムをアンマウントします。これで、VMを起動し、新しいパスワードを使用してrootとしてログインできます。

    fusermount -u ~/mnt
    rmdir ~/mnt
    
2
guntbert

仮想ボックスに新しいVMを作成し、Ubuntuサーバーのハードドライブ(vmdkファイル)である2番目のhardriveを追加できます。

このVMで起動し、サーバーの/ etc/shadowにアクセスします。

0
Sorcha