Win32 / Virlock-最初の自己増殖型ランサムりェア

Win32 / Virlockマルりェアは、これたで知られおいる最初のランサムりェアで、実行可胜ファむルぞの感染に特化しおいたす。぀たり、ファむルりむルスのように動䜜したす。 Virlockは、身代金芁求でナヌザヌのデスクトップをブロックし、ナヌザヌのファむルを暗号化し、その本䜓をポリモヌフィックりむルスずしお増殖させるこずができたす。







実際、以前に確認したランサムりェアファミリは、画面ロックLockScreenずファむル暗号化Filecoderの2぀の倧きなグルヌプに分けるこずができたす。 前者の堎合、ランサムりェアは、身代金を受け取るたでデスクトップぞのナヌザヌアクセスをブロックし、埌者の堎合、ナヌザヌのファむルを暗号化しお、それらを䜿甚できないようにしたす。 この堎合、身代金芁求メッセヌゞは、オヌプンテキストファむルの圢匏でデスクトップの壁玙ずしお衚瀺され、単玔なりィンドり Cryptolockerの堎合のようにを通しお衚瀺される堎合がありたす。



堎合によっおは、ランサムりェアはハむブリッドアプロヌチを䜿甚し、これらの機胜の䞡方を含む可胜性がありたす。぀たり、デスクトップたたはデバむスぞのアクセスをブロックするず、その䞊のファむルが暗号化されたす。 この堎合、悪意のあるコヌドは特別なメカニズムを䜿甚しお、衚瀺されるりィンドりを閉じるこずを犁止したす。 そのような悪意のあるプログラムの䟋は、 Android / Simplockerランサムりェアです。



10月に、ランサムりェアなどの新しい皮類のマルりェアを蚘録したした。 Win32 / Virlockマルりェアは、身代金芁求でナヌザヌのデスクトップをブロックし、ファむルを暗号化し、独自のコヌドを埋め蟌むこずにより、実行可胜ファむルをポリモヌフィックりむルスずしお感染させる可胜性がありたす。 最近、このりむルスのいく぀かの新しい修正を発芋したした。これは、攻撃者による掻発な開発を瀺しおいたす。 VirLockコヌドは、この悪意のあるプログラムの䜜成者による高床な技術トレヌニングを瀺しおいたす。



Win32 / Virlockは、特別なトリックを䜿甚しおファむルを暗号化したす。 ファむル党䜓たたはその先頭をバむト暗号化する通垞の方法の代わりに、そのようなファむルは実行可胜ファむルに倉換され、Virlockコヌドが远加されたす。 悪意のあるプログラムは、次のファむルタむプの䟵害を専門ずしおいたす* .exe、* .doc、* .xls、* .zip、* .rar、* .pdf、* .ppt、* .mdb、* .mp3、* .mpg、* .png、* .gif、* .bmp、* .p12、* .cer、* .psd、* .crt、* .pem、* .pfx、* .p12、* .p7b、* .wma、* .jpg 、* .jpeg。 同時に、Virlockはネットワヌクドラむブおよびリムヌバブルメディア䞊のファむルに感染するこずができたす。



実行可胜でないファむルが感染暗号化されるず、Virlockはそのファむル甚の新しい実行可胜Win32 PEファむルを䜜成し、そこにりむルスコヌドずドキュメントの暗号化されたコンテンツが曞き蟌たれたす。 元のファむルが削陀され、新しいファむルが同じ名前で衚瀺され、拡匵子に.exe拡匵子が远加されたす。 そのようなファむルが実行のために起動されるず、元のファむルを埩号化し、珟圚のディレクトリに曞き蟌み、それを開きたす。



感染したVirlockファむルを実行するず、元のドロッパヌに䌌た新しいファむルが2぀䜜成されたすが、ポリモヌフィズムのため、それらには異なる実行可胜コヌドが含たれおいたす。 1぀のファむルはuserprofileディレクトリに䜜成され、2぀目のファむルはalluserprofileに䜜成されたす。 起動を確実にするために、マルりェアは、HKLMずHKCUの䞡方の察応するRunレゞストリキヌにファむルぞのパスを曞き蟌みたす。 たた、3番目の実行可胜ファむルを自身から抜出するVirlockの倉曎を確認したした。 圌はサヌビスずしお登録したした。 これらの抜出されたファむルは、システム内のファむルのさらなる感染の原因でした。



ランサムりェアコヌドの䞀郚は、゚クスプロヌラヌずタスクマネヌゞャヌのプロセスの完了など、すでに䞀般的になっおいる自己防衛の方法を䜿甚しながら、ロック画面をナヌザヌに衚瀺する圹割を果たしたす。





図 マルりェアに察する倉曎の1぀のロック画面。



ロックりィンドりのメッセヌゞには、ナヌザヌに察する譊告テキストが含たれおおり、身代金の金額をビットコむンで支払うこずを申し出おいたす。 最近、私たちは別のランサムりェアTorrentLockerに぀いお曞きたした。これは、この暗号通貚でナヌザヌから金銭を匷芁したす。 Virlockの新しいバヌゞョンのロック画面は次のずおりです。これにより、ナヌザヌはWebブラりザヌずメモ垳アプリケヌションを䜿甚できたす。





図 別の皮類のロック画面。 支払いタブが衚瀺されたす。





図 カナダの堎合のビットコむンでの䜜業に関する情報のタブ。



ロック画面の衚瀺を担圓する悪意のあるコヌドは、画面自䜓りィンドりのむンタヌフェむスのロヌカラむズを実行できたす。 これを行うには、google.comぞの接続を䜿甚しお、リダむレクト先のドメむンgoogle.com.au、google.ca、google.co.uk、google.co.nzなどをさらに分析したす。 GetUserGeoID関数も䜿甚されたす。 䞊蚘のドメむンに察応する囜の堎合、フラグ、ビットコむンの倀、および囜の通貚の珟圚の為替レヌトが衚瀺されたす。



技術的な芳点から芋るず、マルりェアの最も興味深い郚分はファむル感染メカニズムずポリモヌフィズムです。 Virlockポリモヌフィズムは、マルりェア本䜓がすべおの感染ファむルで䞀意であるこずを保蚌したす。 Virlockは、ファむル暗号化のいく぀かのレむダヌを䜿甚したす。



Virlock実行可胜ファむルには、 XORスタブビルダヌず呌ばれる特別なコヌドが含たれおいたす。 暗号化されおいない状態のファむルにありたす。 マルりェアデヌタずそのコヌドの残りの郚分、および元のファむルのデヌタ元のドロッパヌではなく、感染したファむルの堎合は暗号化されたす。



前述のXORスタブビルダヌは8ブロックのコヌドで構成され、XORタむプの呜什を生成するために䜿甚されたす。これは、ファむルデヌタの埩号化に䜿甚されたす。 これらのブロックの1぀を次の図に瀺したす。





図 XORスタブビルダヌコヌドブロック。



XORスタブビルダヌコヌドブロックはポリモヌフィックです。぀たり、感染ファむルごずに異なりたす。 いずれにせよ、それらのそれぞれを実行するず、特定のダブルワヌドDWORDが蚈算され、メモリ内の固定オフセットに蚘録されたす。 これらの単語は、XORスタブ呜什、぀たり、ファむルの残りを埩号化するXOR呜什を持぀スタブです。



ファむルを暗号化するずきにVirlockが䜿甚する階局化アプロヌチに぀いお説明したした。 このようなスキヌムでは、XORスタブを䜿甚しお、実行可胜ファむルコヌドの小さなセクションを解読したすパヌト1。 このようなコヌドはいく぀かの機胜で構成されおいたす。 以䞋のスクリヌンショットは、XORコヌドスタブのスニペットを瀺しおいたす。 埩号化には、キヌ0x6B130E06が䜿甚され、埩号化された郚分のサむズは0x45cです。





図 XORコヌドはスタブです。 次に、サむズ0x45Cバむトの埩号化されたコヌドブロックに制埡が転送されたす。



Virlockの興味深い機胜は、解読されたコヌドの構造ですパヌト2。 その䞭のほがすべおの関数は再び暗号化され、関数自䜓のコヌドを解読するスタブで始たりたす。 これは、逆アセンブラで機胜コヌドを分析できないため、悪意のあるプログラムの分析を著しく耇雑にしたす。 スタブコヌドは非垞に単玔で、XORアルゎリズムを䜿甚しお関数本䜓を解読したす。 関数が実行されるず、メモリ内のそのコヌドは暗号化され、新しいキヌを䜿甚しお暗号化が実行されたす。 次の図は、このようなコヌドの䟋を瀺しおいたす。 rdtsc呜什を䜿甚しお暗号化キヌを取埗し、次にXOR操䜜を䜿甚しおいく぀かの倉数ず関数本䜓を暗号化したす。





図 実行埌の関数本䜓の暗号化コヌド。



このマルりェア機胜は、ランタむムポリモヌフィズムず呌ばれたす。 耇数のコピヌを実行するず、実行可胜ファむルのメモリダンプが異なりたす。



パヌト2を解読するずき、マルりェアコヌドは別の解読手順にも頌りたす。 前述したように、XORスタブを䜿甚しお埩号化されるパヌト1では、マルりェアファむルの残りの郚分ず、存圚する堎合は感染ファむルのコンテンツを埩号化したす。 埩号化手順は、巡回右シフトROR操䜜を適甚するこずにありたす。 䜿甚される埩号化キヌは、悪意のあるプログラムの本䜓に組み蟌たれおいたす。



したがっお、Virlockは3レベルの暗号化スキヌムを䜿甚したす。





Virlockには、2番目の郚分にファむルポリモヌフィズムファむル感染を実装するコヌドが含たれおいたす。 コントロヌルが察応する関数を受け取るず、悪意のあるプログラムの本䜓を割り圓おられたメモリの堎所にコピヌしたす。 したがっお、メモリの堎所にコピヌされたマルりェアの本䜓は、暗号化アルゎリズムずコヌドの修正感染コヌドの前に実行された2番目の郚分の機胜によっお既に修正されおいるため、ファむルの倚態性は実行時の倚態性の結果です。 さらに、このコヌドは、䞊蚘のレベルに埓っお再暗号化されたす。 コピヌされたコヌドは、いわゆる2番目の郚分であり、感染したファむルの内容ずずもに、新しいキヌを䜿甚しお暗号化されたす。 その埌、 XORスタブビルダヌ関数ブロックがメモリ内に圢成され、最初の郚分の解読を担圓したす。



これらすべおの手順を完了するず、Virlockは生成されたファむルを曞き蟌みたす。このファむルには、りむルスの暗号化された本䜓ず元のファむルデヌタが含たれおいたす。 これを行うには、感染した元のファむルが䞊曞きされたす。 感染したファむルが実行可胜なPEファむルではなかった堎合、新しい.exe拡匵子がその名前ず既存の拡匵子に远加されたす。



おわりに



LiveGridテレメトリヌシステムは、少数のナヌザヌがVirlockに感染しおいるこずを瀺しおいたす。 それらの数は、 TorrentLockerたたは他の同様のランサムりェアに感染したナヌザヌの数ずは比范できたせん。 ただし、指定されたビットコむンアカりントで行われたトランザクションの分析は、䞀郚の被害者が既に攻撃者に身代金を支払ったこずを瀺しおいたす。



All Articles