タスクの手がかりは1つだけでした。
警告:erawmosnar ==ランサムウェア。実行していない場合は、実行しないでください。
始めましょう
ファイルをダウンロードしてIDAで開くと、1000を超える名前のない関数があり、Golangのように見えるので、Googleにアクセスしてください 。
簡単なGoogle検索でこの問題の解決策が示されました。 スクリプトをダウンロードし、IDAで実行してお楽しみください。
バイナリを開始すると、8桁のPINコードの入力を求める招待状と、失敗した場合の不正確さに関するメッセージが表示されます。

これを出発点として使用すると、これらすべてを処理する関数を見つけることは難しくありません。 スクリプトでコードを処理した後、この関数はmain_mainと呼ばれます 。
それはすべて、ハッシュがバッファに書き込まれるという事実から始まります。
次に、ピンを入力するように求められます。
次に、SHA1ハッシュがそこから計算され、標準に対してチェックされます。そうすれば、フラグが表示されるか、現在のディレクトリの内容が暗号化されるかのいずれかで、すべてが単純になります。
明確にするために、いくつかのブレークポイントを設定します。
gdb-peda$ break *0x4015B4 Breakpoint 1 at 0x4015b4 gdb-peda$ break *0x4015D5 Breakpoint 2 at 0x4015d5 gdb-peda$ break *0x401669 Breakpoint 3 at 0x401669 gdb-peda$
runtime_concatstring2関数が呼び出される前に最初のブレークポイントがトリガーされ 、ハッシュがスタックに送信され、ピンと「\ n」記号が送信されます。

[続行]をクリックすると、次のブレークポイントに到達します。ここでは、入力したPINコードとソルトを連結した結果が明確に表示されます。

3番目のブレークポイントでは、ハッシュが検証されます。 必要な情報がすべて揃ったので、ハッシュを削除するだけです。 検索用の辞書を作成します。
gh0st3rs@gh0st3rs-pc:erawmosnar$ crunch 8 8 1234567890 -o /media/DATA/passwdlst/8digits.lst
検索を開始します。
gh0st3rs@gh0st3rs-pc:erawmosnar$ sudo hashcat -m 110 --hex-salt hash /media/DATA/passwdlst/8digits.lst

ピンは正常に選択され、フラグを拾うために残ります:
