web-dev-qa-db-ja.com

ルートキットウイルスからmbrを修復する試みでtestdiskを使用したデータハードディスクからデータを回復する必要がある

ここに私の状況が何であるかを言い始める前に、この混乱で私を助けてくれる人のために私が永遠に感謝することを知ってください。私はここで長年の骨の折れる仕事の写真を持っています。私はセミプロの写真家で、ハードディスクには写真からおよそ1.5 TBのデータが含まれています。加えて、100GBの音楽ライブラリ全体と、すべてのDVDに時間をかけてハードディスクにアクセスしました。しかし、私の写真は私が最も心配しているものであり、交換できません。

ここで簡単に説明します。backblazeを使用してデータのバックアップを常に取っています。これはWindowsのオンラインバックアップです。約3か月前に、プレックスを使用してファイル用のサーバーを取得することを決定し、unbuntuが最適な方法であると判断しました。そのため、「グレイホール」と呼ばれるものを使用してこのバックアップ方式を利用し、このグレイホールバックアッププログラムで(2)2TBハードドライブと(1)1 TBハードドライブをセットアップしました。

その後、ルートキットを入手しました。このことは厄介で、2か月間すべてを試した後、BIOSを再フラッシュする必要があり、それでもこのウイルスが残っていたと思います。すべてのハードドライブを再フォーマットし、1台のハードドライブ(2 TBハードドライブ)にすべてをバックアップする必要がありました。信じられないほどこのウイルスを取り除くことはできませんでした。最終的に私はそれを捕まえた。ネットワークイーサネットカードに埋め込まれていました。これを読んでいる人は、そこに埋め込まれているものはすべて、ルーター、すべてのLANに感染し、BIOS自体の再フラッシュを行ってもコンピューターにとどまる可能性があります。

とにかく、私はまだハードドライブにファイルを持っているものを取り除くように見えた後。マシンを再感染させたくなかったので、testdiskというユーティリティを使用してMBRを書き直そうとしました。

大ミス

私は何をしていたのか見当がつかなかった。そして今、私は私の情報を読むことができません!

良いニュースがありますか? testdiskがそれをした後(ドライブを分析し、WRITEコマンドを使用してダメージを与えることから成っていました)、それが行われるのにたった1秒しかかかりませんでした。 「dd」を使用してドライブ上で実行しました。これは私が行った小さなことでした。そのため、データはまだドライブ上にある必要があると考えています。

私が知っていることは次のとおりです。

  • ドライブはデータドライブであり、OSはありません。私は別のドライブのOSとしてubuntuを使用しました。
  • ext3またはext4としてフォーマット
  • サイズ= 2 TB
  • ファイル=かけがえのない、私の人生はすべて機能します-過激ではありません。

また、30日以上経過しているため、backblazeにファイルがありません。ルートキットのため、他のすべてのバックアップを0で上書きしました。このハードドライブは、これが起こった当時の私のファイルの唯一のソースでした。偶然にも、これは私が長年にわたってバックアップなしで過ごした唯一の時間です。

これはfdisk -lのコピー/貼り付けです

Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0006a14b

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63  3907024064  1953512001   83  Linux
Partition 1 does not start on physical sector boundary.

そして、lshw

*-scsi:0
          physical id: 2
          logical name: scsi2
          capabilities: emulated
        *-cdrom
             description: DVD writer
             physical id: 0.0.0
             bus info: scsi@2:0.0.0
             logical name: /dev/cdrom
             logical name: /dev/sr0
             capabilities: audio cd-r cd-rw dvd dvd-r
             configuration: signature=643a3365 status=ready
        *-disk
             description: ATA Disk
             product: ST2000DM001-1CH1
             vendor: Seagate
             physical id: 0.1.0
             bus info: scsi@2:0.1.0
             logical name: /dev/sda
             version: CC24
             serial: W1E2L5K7
             size: 1863GiB (2TB)
             capabilities: partitioned partitioned:dos
             configuration: ansiversion=5 sectorsize=4096 signature=0006a14b
           *-volume
                description: EXT3 volume
                vendor: Linux
                physical id: 1
                bus info: scsi@2:0.1.0,1
                logical name: /dev/sda1
                version: 1.0
                serial: 05ea2f85-06fd-446c-a885-30614d53630c
                size: 1863GiB
                capacity: 1863GiB
                capabilities: primary bootable journaled extended_attributes large_files recover ext3 ext2 initialized
                configuration: created=2013-03-27 07:57:02 filesystem=ext3 label=foo modified=2013-03-27 08:11:50 mounted=2013-03-27 08:11:50 state=clean

私に何ができますか?私はtestdiskで再びそれを台無しにするのが怖いです。ファイルを回復したいだけです。それらがどのように消えたのかわかりません。

どうもありがとうございます-

8
wardr

外部USBドライブ上のイメージからデータを回復するには、次の手順が必要です。

  1. 破損したドライブの使用を停止します。
  2. 破損したドライブのサイズからデータ量を保持して、外部ドライブを用意します。 元のドライブから作成されるような大きなファイル(ext4など)を保持できるファイルシステムでフォーマットします
  3. ライブセッションからUbuntuを起動します( "Try Ubuntu")。
  4. Nautilusを使用して外部ドライブをマウントします。
  5. 外付けドライブのマウントポイントを確認します。
    例:[プロパティ]-> [右クリックメニューの場所]
  6. ターミナルでこれらのコマンドのいずれかを使用して、破損したドライブの場所を確認します

    Sudo fdisk -l
    Sudo blkid
    
  7. 破損したドライブのイメージを作成します

    Sudo dd if=/dev/sdX of=/mountpoint/DRIVENAME/rescue.dd
    

    sdXを破損したドライブ(例:sda)またはパーティション(例:sda1)に置き換えます。 /mountpoint/DRIVENAME/を、USBドライブがマウントされた実際のパスに置き換えます。

    Only破損したドライブの場合(sdX)は、外部ドライブのサイズ(sdY)と同じで、ドライブ(Sudo dd if=/dev/sdX of=/dev/sdY)のクローンを作成して、クローンされた外部ドライブでデータレスキューを実行できます。それでも、上記のように画像を操作する方がはるかに安全なアプローチです。

    この時点で、ddコマンドを正しく取得することが重要です。 of=に間違ったエントリを指定した場合、そこに存在していたすべてのデータが破損する可能性があります。

  8. 以下の私の回答でさらに詳しく説明したように、稼働中のシステムにTestDiskをインストールします。

  9. TestDiskのメーカーが作成した素晴らしい簡潔なガイドを読んで、回復してください。

  10. ドライブが巨大な場合は、anotherドライブ/パーティションをマウントして、復元されたデータを保持します。 testdiskのこのマウントポイントに注意してください。
  11. 実行 testdiskInstall testdisk ドライブの画像:

    cd /mountpoint/DRIVENAME/
    Sudo testdisk rescue.dd
    
  12. リカバリしたディレクトリとファイルをバックアップドライブ/パーティションに保存します(イメージの場所と異なる場合に備えて、テストドライブにこのドライブのマウントポイントを保存場所として指定します)。
  13. データがあることを確認します。
  14. すべてのドライブをアンマウントするか、ライブセッションをシャットダウンします。

ファイルの復元に成功しなかった場合、 PhotoRec を実行することもできます。これは、個々のファイルを復元するためにTestDiskスイートと一緒にインストールされます(ただし、ファイル名のアクセス許可とディレクトリは失われます)。

損傷したドライブはそのままです。上記の手順で失敗した場合に備えて、このドライブを専門のサービスによって復旧させることもできます。

10
Takkat

とりわけ、testdiskはデータを回復するツールとして機能するはずです。ただし、何よりもまず-他の操作を行う前に、データの最後のコピーを保護する必要があります。まず、ここからのみ読み取り専用でマウントします。 (オプションroで再マウントできます。man mountを参照)

大きな(> 2TB)ディスクを用意して、現在のディスクの完全なイメージをコピーすることをお勧めします。dd if=/dev/sda of=disk-image.ddここで、/ dev/sdaは読み取り専用でマウントされたすべての重要なディスクで、disk-image.ddはファイルです新しいディスクで、2TBの空きがあることを確認します。

testdiskはイメージでも機能し、パーティションテーブルを整理できるはずです。質問やコメントをお送りください。こちらからご確認いただけます...

読み始めるのに適した場所はこちらです: http://epyxforensics.com/node/36 ウォークスルーでは、ddコピーを作成することから始めます上記を提案し、コピーの作業を続けます。

Testdisk、gparted、そしておそらくhexeditがインストールされた試験用コンピューターを手に入れましたか?

3
DrSAR