NeoQUEST-2014タスクで、入力ツヌルを䜿甚せずにコンピュヌタヌにクロヌルし、ゞョヌカヌを探しおAndroidのサヌバヌに接続したす







NeoQUEST-2015予遞ラりンドはたもなく開始されたす。それに備えお、NeoQUEST-2014フルタむムツアヌのタスクを䞀緒に行うこずを提案したす。 既にNeoQUEST-2014がどのように進んでいるかを䌝え 、レポヌトず写真を共有したした誰かが自分自身を芋぀けたかもしれたせん。 では、聎衆の目からは神秘的で隠されおいるこずに぀いおお話ししたしょう。しかし、NeoQUESTの最も重芁な郚分は、2月のオンラむンツアヌの結果によるず最高のサむバヌセキュリティ専門家の競争です。



参加者の察立には5぀のタスクが含たれおいたしたが、そのうちの1぀は倱敗したした。 この蚘事では、合栌した4぀を分析したす。







タスクの分析に進む前に、最も重芁なこずを蚀いたしょう-それにもかかわらず、誰がNeoQUEST-2014の勝者になりたしたか

眮きたす-AV1ct0r

II䜍-Dor1s

III䜍-Abr1k0s



AV1ct0rが䞻な賞を受賞したした-情報セキュリティに関する囜際䌚議ぞの旅で、男たちはレゎロボットず色の付いたプラスチックのセットが付いた3Dペンをお互いに分けたした。

ちなみに、このむベントの倚くのゲストは、コンテストで獲埗した小さいながらも楜しいプレれントを残したしたこれに぀いおは、NeoQUEST-2014フルタむムツアヌの経緯に関する蚘事で詳しく説明しおいたす。



私はゞョヌカヌですか -タスク番号1



タスクぞの゚ントリポむントは、タむトル自䜓に隠されおいたした。 割り圓おのさらなる進展は、次の段階に分けられたした。



  1. google.comでamijokerフレヌズを怜玢するず、参加者に興味深い情報が提䟛されたした。

    • 芳光コミュニティ「Turbina」のサむト䞊の同じ名前のアカりント
    • ゜ヌシャルネットワヌクFacebookのナヌザヌプロファむルぞのリンク
  2. Turbina Webサむトのアカりントから有甚な情報を取埗するには、参加者からの登録は必芁ありたせんでした。 以䞋は、参加者がAmIJokerナヌザヌプロファむルを泚意深く芋たずきに気付くこずができるものです。

    • John Smith Twitterブログリンク
    • Twitterフォロヌアップコヌル
    • ナヌザヌがプログラマヌずしお働いおいるずいう情報
  3. ナヌザヌのTwitterブログにアクセスしお賌読するず、その盎埌にJohn Smithがメンバヌのアカりントにサむンアップし、次のテキストを含む個人メッセヌゞを送信したした。 割り圓おのこの郚分では、参加者はpngの名前をステガノグラフィヌを䜿甚しお非衚瀺にする必芁があるず掚枬する必芁がありたした。 しかし、すべおのアルゎリズムが機胜するずは限りたせん。 目的のアルゎリズムを怜玢するアむデアのうち、最も論理的なのは、Facebookアカりントで怜玢するずいうアむデアでした。
  4. 実際、github.comに投皿されたプロゞェクトぞのリンクはアカりントりォヌルに公開され、github.comぞの別のリンクは個人情報に公開されおいたす。
  5. 最初のリンクでgithub.comにアクセスし、プロゞェクトを確認したす。 このプログラムはPHPで蚘述されおおり、Twitter APIで動䜜したす。 これを䜿甚しお、写真をアップロヌドできたすが、APIずOAuthに十分なキヌがありたせん。 これは、github.comぞの2番目のリンクが䟿利な堎所です。クリックしたす。
  6. このリポゞトリには、Cで曞かれたプロゞェクトが含たれおいたす。最も単玔なステガノグラフィアルゎリズムの1぀を実装しおいたす。 しかし、Twitter APIで動䜜するキヌを取埗する方法は
  7. ここでは、参加者の泚意力がチェックされたした 䌝説では、゚アロスミスの歌「Girls Of Summer」が蚀及されたのは無駄ではありたせんでした。 短い怜玢の埌、倚くの人が倏の女の子のサむトを芋぀けたした。 たた、このサむトのアドレスは、Facebookのアカりントの䞀般情報に蚘茉されおいたす。 このサむトは倏は新鮮で、目を楜したせおくれたす
  8. このサむトには特別な機胜はありたせんが、経隓のある人はGETパラメヌタヌを送信するこずで写真の切り替えが発生するこずに気付くかもしれたせん。 2぀のパラメヌタヌの1぀は、SQLむンゞェクションに察しお脆匱です。 この単玔な泚入により、参加者はtwitter APIを操䜜するために必芁なキヌを取埗できたす。

    • id 1
    • apiKey 603445921-b8c9k8OMhalLS8FakTpDHoUuXIzKuHLabOPWspsR
    • apiSecret O0DWIqmlNT02RKUZcXHIvkyMWG7Hwd9vKzAjd7JJ89Kbg
    • consumerKey vlC5S1NCMHHg8mD1ghPRkA
    • consumerSecret 3w4cIrHyI3IYUZW5O2ppcFXmsACDaENzFdLIKmEU84




必芁なツヌルをすべお受け取ったので、完成したプログラムのキヌを眮き換えお、写真をTwitterにアップロヌドするだけで枈みたした。

参加者の名前がpngファむル内に正しく曞き蟌たれおいる堎合、写真に応じお、ゞョブキヌを含む個人的なメッセヌゞを受け取りたした。



䞀般に、タスクスキヌムは次のようになりたした。











予期せぬ発芋-ク゚スト番号2



参加者に䞎えられたのは、入力手段のないコンピュヌタヌず、SecureDrive機胜を備えたトランセンドフラッシュドラむブだけでした...モニタヌずUSBポヌトのみがコンピュヌタヌで動䜜し、マりスを備えたキヌボヌドは機胜したせんでした。 ちなみに、BIOSはパスワヌドで保護されおいたため、参加者は自分の持っおいるものに間に合わせる必芁がありたした。 割り圓お時に、参加者はこのコンピュヌタヌから送信されたメヌルのバックアップコピヌをコピヌし、秘密鍵のある手玙を芋぀ける必芁がありたした。



この状況では、フラッシュドラむブからプログラムを自動実行するこずによっおのみコンピュヌタヌずの察話が可胜になるこずは明らかです。 簡単なチェックで、リムヌバブルメディアからの自動実行が無効になっおいるこずがわかりたす。 ここでは、それらからだけでなくCDからも自動実行が可胜であるこずを芚えおおく必芁がありたす。たた、発行されたフラッシュドラむブ、぀たりSecureDriveにも泚意を払う必芁がありたす。 フラッシュドラむブにはセクションがあり、コンピュヌタヌによっおCDずしお定矩され、他のセクションには、フラッシュドラむブの保護されたセクションが機胜しおいた特別なプログラムがありたした。 これはあなた自身の目的のためにセクションを䜿甚するずいう考えに぀ながったはずです



このようなフラッシュドラむブは非垞に広く普及しおおり、起動可胜なドラむブずしおよく䜿甚されるため、仮想CD-ROMの内容を自分のCD-ROMに眮き換える方法に関する情報を芋぀けるのは簡単です。 このために、補造元のナヌティリティであるJetFlash Online Recoveryを䜿甚しお、デバむスに問題が発生した堎合にSecureDriveでパヌティションを埩元したす。 ナヌティリティの調査によるず、パヌティションは実行可胜ファむルずは別に保存されたISOむメヌゞに基づいお䜜成されたす。 この堎合、チェックは行われたせん。その結果、フラッシュドラむブの必芁な倉曎は、このむメヌゞを特別に準備されたむメヌゞで眮き換えるこずによっお実珟されたす。



タヌゲットコンピュヌタで任意のコマンドを実行できるようになったら、バックアップの怜玢を開始できたす。 デスクトップにIISショヌトカットが存圚するず、ナヌザヌはC\ドラむブのルヌトに察応するフォルダヌが存圚するかどうかを確認するように求められたす。



dir C:\
      
      







バックアップフォルダもそこにありたす。 キヌボヌドを䜿甚せずに目的の文字を怜玢するには時間がかかる可胜性があるため、次のステップでは、このフォルダヌをフラッシュドラむブの2番目のセクションにコピヌしたす。 その前に、コピヌコマンドを準備するために、それに割り圓おられたドラむブ文字を決定する必芁がありたす。



 xcopy C:\backup F:\backup /I /Q /Y
      
      







文字のあるファむルの数が倚いため、コピヌに時間がかかりたす。 同じ理由で、必芁な文字を手動で芋぀けるこずができたせん。 ただし、ク゚ストの䌝説にはヒントがありたす。秘密鍵は6月12日に郵送されたした。 パラメヌタヌを䜿甚しお怜玢プロセスを自動化するこずのみが残りたすが、これは非垞に簡単です。



 grep -l "12 Jun" * | sort -u | xargs grep -E "\<[a-f0-9]{32}\>"
      
      







芋぀かった行の䞭から、目的のキヌをすでに手動で芋぀けるこずができたす。



あなたの目を信じないでください-タスク№3



キヌを芋぀けるために、参加者にはRDPずいう単語、IPアドレス、およびログむンパスワヌドを含むNeoQUESTロゎのシヌトが䞎えられたした。 最初の論理的な考えは、指定されたコンピュヌタヌでRDPを入力しようずするこずです...そしおそれは動䜜したす







このタスクでは、キヌを探す方法に぀いおは䜕も蚀われおいたせん。぀たり、あなたは思い切っお行動する必芁がありたす。 コンピュヌタヌのデスクトップは空でしたが、ブラりザのある3぀のショヌトカットは䟋倖ずしおそこに明確に配眮されおいたした。 Google Chromeを起動しようずしおも、䜕も起こりたせん。 通垞のブラりザりィンドりが開き、任意のサむトに移動しおニュヌスを読むこずができたす。 Mozilla Firefoxを起動するず、状況は䌌おいたす。 Internet Explorer-すべお倉曎なし。 ブラりザヌ固有のデヌタWebペヌゞぞのアクセス履歎、保存されたパスワヌド、Cookieなどを確認するのは理にかなっおいたす。しかし、すべおが無駄であるこずが刀明したした。











さお、ブラりザが通垞どおり「倖郚的に」機胜し、手がかりを持たない堎合、平均的なナヌザヌには芋えない「内郚」操䜜には、独自の特性がありたす。 そしお、最初に怜出された機胜は、開いおいるタブが空であるにもかかわらず、ブラりザのリモヌトサヌバヌぞの定期的な呌び出しです。 このようなアクションは、暙準のオペレヌティングシステムアプリケヌションであるリ゜ヌスモニタヌによっお簡単に怜出されたす。







Wiresharkスニファヌをむンストヌルし、発信トラフィックを分析するこずにより、参加者は、stub.phpファむルぞの10.0.25.120 WEBサヌバヌぞのデヌタストリヌムを怜出できたした。 面癜いかも ただし、このIPアドレスをいくらスキャンしおも、このサヌバヌにいくら䟵入しおも、結果はありたせん。 そしお、実際には、サヌバヌは完党に空であり、貎重な情報はなく、参加者が正しい方向に移動しおいるこずを瀺すためにのみ䜿甚されたす。



次の機胜は、ブラりザのプロセス、぀たりブラりザが䜿甚するリ゜ヌスの機胜の詳现な分析の埌です。 これを行うには、暙準ツヌルリ゜ヌスモニタヌずサヌドパヌティツヌルの䞡方を䜿甚できたすこれは、「サヌドパヌティ」がRussinovichから資金をどのように呌び出すこずができるかずいう問題ですがProcess ExplorerずProcess Monitorです。



Process Explorerを䜿甚するず、プロセスの階局衚瀺、そのプロパティ、セキュリティ蚭定、プロセスにあるリ゜ヌスなどを衚瀺できたす。 しかし、倧たかなスキャンでは、関心のあるプロセスには興味深いものは䜕も衚瀺されたせん。







しかし、プロセスモニタヌを䜿甚した埌は、タスクに察する答えは実質的に手にありたす。







Process Monitorは、デスクトップ䞊にあるkey.txtファむルに察しお定期的に芁求が行われるこずを瀺しおいたす。 奇劙ですが、そのようなファむルはありたせん。 になる方法 そしお、ここでは叀いトリックを芚えおおく䟡倀がありたす-ファむルは隠されおいるかもしれたせんが、堎所を知っおいれば、それを開くこずができたす。 玠晎らしいプログラムを䜿甚するず、これを実行できたす息を吐きたすNotepad.exe







以䞊です。 開いたメモ垳りィンドりに、参加者に必芁なキヌがありたす。 勝利







これですべおが明らかになりたした。 コンピュヌタヌにはマルりェアがあり、䜕らかの方法ですべおのブラりザヌにコヌドを埋め蟌み、その助けを借りおWebサむトずのネットワヌク通信を隠したす。 さらに、ディスク䞊のファむル、特にタスクのキヌを持぀ファむルも非衚瀺にしたす。



幹郚がすべおを決める-タスク№4



䌝説では、参加者は1人のビゞネス䞊の連絡先を远跡する必芁があるず蚀われたした「確かに倚くの有甚な番号が電話垳に保存されおいたす」䌝説からの抜粋そしお、この本にアクセスできるIPアドレスが䞎えられたした。



ブラりザからこのIPに切り替えるず、ナヌザヌは写真をアップロヌドするように求められたした。 ナヌザヌがjpgファむルをアップロヌドした堎合、線集された画像ぞのリンクが提䟛されたした。



䞀芋、これはWebセキュリティタスクですが、たったくそうではありたせん。 Webサむトの遞択を開始するず、いく぀かの興味深いこずがわかりたす。



たず、゜ヌスコヌド開瀺の脆匱性の助けを借りお、ブラりザのアドレスバヌに192.168.0.2228080 / upload.phpのように曞き蟌むか、ファむル拡匵子の倧文字小文字を倉曎するだけで、upload.phpファむルをダりンロヌドできたす。 upload.phpの゜ヌスコヌドは次のずおりです。



 <html> <head> <title>Make your retro pattern</title> </head> <body> <?php $my_name = htmlspecialchars(trim($_POST["action"])); echo $my_name; $date = date_create(); if($_FILES["filename"]["size"] > 1024*1024) { echo ("Sorry bro ... your file is more then 1Mb..."); exit(); } $valid_types = array("jpg", "jar"); $ext = substr($_FILES['filename']['name'], 1 + strrpos($_FILES['filename']['name'], ".")); if (!in_array($ext, $valid_types)) { echo 'invalid file type'; exit(); } if(copy($_FILES["filename"]["tmp_name"], "/sdcard/pws/www/".$my_name."_".md5($_FILES["filename"]["name"].date_timestamp_get($date)).$_FILES["filename"]["name"])) { echo("success"); } else { echo("error"); } sleep(5); echo("<br>Your file is here"); $url="/res/".$my_name."_".md5($_FILES["filename"]["name"].date_timestamp_get($date)).$_FILES["filename"]["name"]; echo("<p><a href=".$url.">Your new file</p>"); ?> </body> </html>
      
      







ここで面癜いのは䜕ですか たず、面癜くないjpgだけでなく、非垞に興味深いjarもダりンロヌドできるこずがわかりたす。明らかに、このサヌバヌはJavaで動䜜したす。 次に、パス「/ sdcard / pws / www /」が衚瀺されたす。単語sdcardは、サヌバヌが電話に乗っおいるずいう事実に非垞によく䌌おいたす信じるこずはただ難しいです。 そしお、この行をGoogleで取埗しお怜玢するず、これがAndroidで䜜成されたPalapa Web Serverであるずいう事実ず非垞によく䌌たものになりたす。

さらに、参加者は、サむトのファむル構造を決定するArxScanSiteなどのスキャナヌでサむトをスキャンするだけで、非垞に興味深い情報ファむルを芋぀けるこずができたす。 このファむルは䞋の写真です。







そしおこの埌、これが電話であるこずに疑いはもはや残るべきではありたせん。 Java +電話= Androidを接続するために残っおおり、Nmapでスキャンするこずで再床確認するこずができたすが、Android電話でWebサヌバヌが発生しおいるこずがわかりたす。

぀たり、AndroidにWebサヌバヌがあり、サヌバヌのルヌト「/ sdcard / pws / www /」ぞのパスがわかっおいるので、jarファむルをアップロヌドできたす。 ここで最も重芁なこずは、タスクで「確かに倚くの有甚な数字が電話垳に保存されおいる」ず蚀われたこずを芚えおおくこずです。぀たり、ダりンロヌドした画像に埓っお、Androidスマヌトフォンに保存されおいるすべおの電話番号をメモリカヌド䞊のファむルに曞き蟌むjarを䜜成する必芁があるこずを意味したす次のパス「/ sdcard / pws / www /」。 写真を芋るず、コンテキストずContentResolverを受け取り、電話番号をファむルに曞き蟌むstartメ゜ッドを䜜成するcom.example.QUEST2014.contactBackupパッケヌゞを䜜成する必芁があるこずが明らかになりたす。



次に、このjarをAndroidに適甚できるようにする必芁がありたす。いく぀かの方法がありたす。 最初のパスは4段階で実行されたす。

  1. クラスのみをjarファむルに゚クスポヌトしたす。その埌、通垞のjarファむルを、クラスファむルを含むzipアヌカむブずしお取埗したす。
  2. jar2dexナヌティリティを䜿甚しおjarファむルからdexファむルを䜜成するず、classes.dexファむルが䜜成されたす。
  3. classes.dexファむルをzipアヌカむブにアヌカむブしたす。
  4. 結果のzipアヌカむブの名前をjarファむルに倉曎したす。




別の方法には5぀のステップが含たれたす。

  1. アプリケヌションのコンパむル。
  2. Android SDKが配眮されおいるディレクトリ、dx.batナヌティリティを含むディレクトリたずえば、「android-sdk \ platform \ android-3 \ tools」を怜玢したす。
  3. このディレクトリに任意の名前たずえば、「1」でディレクトリを䜜成したす。 ディレクトリ「1」内に、アプリケヌションの構造に䌌たファむル構造を䜜成したす。 「1 \ com \ example \ QUEST2014 \ contactBackup」。
  4. 「\ out \ production \ APPLICATION_NAME \ com \ example \ QUEST2014 \ contactBackup」ディレクトリの内容をこのディレクトリにコピヌしたす。
  5. 「dx --dex --no-strict --output = ctf.jar 1 /」ずいうパラメヌタヌを指定しおdx.batを呌び出したす。 その結果、目的のファむルctf.jarを取埗したした。




すべおが勝利だったように思えたすが、そこにありたした このjarをダりンロヌドしようずするず、サむトはconvert.jarがそのようなファむルを知らないずいう゚ラヌを出したす。 index.htmlを芋るず、すべおが非垞にシンプルであるこずがわかりたす゜ヌスコヌドを以䞋に瀺したす。 アクションず呌ばれる隠しタグがupload.phpに枡され、倀が「convert.jar」であるこずに気付くかもしれたせん



 <html> <head> <title>Make your retro pattern</title> </head> <body> <h2><p><b>Upload your image</b></p></h2> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="filename"> <input type="hidden" name="action" value="convert.jar"> <input type="submit" value="Upload"> </form> </body> </html>
      
      







ここで、倀をダりンロヌドしたjarファむルの名前に倉曎する必芁がありたす。 連絡先のリストを取埗したす。



ID 190の名前Max Smith電話+44234234234

ID 134名前Max Smith電話+4467652341

ID 137名前Alex Smith電話+4487653827

ID 193名前NeoQuestKey PHONE +78123123481

ID 4の名前Andrey Petrov電話+79219325680

ID 11の名前Max Sushinsky電話+79843214982

ID 13名前Arkady Mamontov電話000001

ID 1 NAMEテストテストPHONE 1234567

ID 7の名前Petr Ivanov電話2359631

ID 119名前Ivan Zhukov電話89215897894



NeoQuestKey電話を取埗し、それからハッシュを蚈算する必芁があるこずは明らかです。 さお、それですべお、フラグが完了し、タスクが完了したした



継続するには...


聎衆はサむバヌセキュリティに関するレポヌトを聞き、楜しいコンテストに参加しお莈り物を受け取りたしたが、私たちの英雄的な参加者は非垞に動的にタスクに察凊したした。 もう䞀床、受賞者の皆さん、おめでずうございたす。そしお、NeoQUEST-2015のオンラむンステヌゞがすでに近づいおいるこずを思い出しおください。さらに興味深いタスクは、神秘的な実際には垞に䌝説によっお結び付けられおいたす。 圓瀟のりェブサむトおよびブログのHabrahabrの曎新をお楜しみに。










All Articles