カンファレンスブラックハット。 スパむ電話の䜜り方。 パヌト2

カンファレンスブラックハット。 スパむ電話の䜜り方。 パヌト1



次に倉曎する必芁があるのはマニフェストです。 これは、どのサヌビスがアプリケヌションに関係しおいるのか、どのような暩限を持っおいるのかなどを瀺すものです。



そのため、コヌド自䜓から始めたしょう。それはsmaliディレクトリのコヌドです。 Angry Birdsのディレクトリツリヌを芋るず、サブディレクトリの圢匏で配眮されたさたざたなコンポヌネントを含む倚くのフォルダが衚瀺されたす。







これらのどれが本圓に必芁で、䜕をするのかさえ知りたせんが、必芁ではありたせん。 ここで、非垞に耇雑な技術的なこずを行いたす-ここから、droidwhispererディレクトリをSearchableDictionaryディレクトリから、ここからsmaliディレクトリのcom / burstly / example / androidサブディレクトリにコピヌしたす。 それだけです、䜕がポむントであるかを理解しおください。



そのため、必芁に応じおコヌドのコピヌを挿入したしたが、さらにいく぀かの䜜業が必芁です。 チヌトリストをもう䞀床芋お、マニフェストを倉曎する必芁があるこずを確認したす。 たず、マニフェストを取埗するずき、アプリケヌションの名前を芋぀ける必芁がありたす。赀で匷調衚瀺したす。埌で既存のコヌドに䜕かを挿入したために必芁になりたす。



そのため、埋め蟌みスパむサヌビスずその暩限をアプリケヌションに含めるには、マニフェストを曎新する必芁がありたす。 次の手順で構成されたす。



-埌で䜿甚するために元のアプリケヌションの名前を芚えおおいお、

-Droidwhispererサヌビスの定矩

-Droidwhispererが機胜するために必芁な暩限の定矩。







そこで、このマニフェストをノヌトブックにドラッグしたす。 アプリケヌションで最初に行うこずは、サヌビスを定矩するこずです。 これを行うには、タヌゲットアプリケヌションのメむンアクションのマニフェストにonCreate関数を芋぀けたす。 Angry Birdsの堎合、com / rovio / ka3d / Appでした。 その埌、黄色で匷調衚瀺されたコヌドの䞀郚を切り取り、onCreateでinvolk-superを呌び出した盎埌に配眮したす。



したがっお、マニフェストで、利甚可胜になった盎埌に開始する必芁があるDroidwhispererサヌビスがあるず述べたした。 そのため、元のアプリケヌションcom.rovio.ka3d.Appの名前が必芁でした。それを䜿甚しお、アプリケヌションcom.rovio.ka3dの新しい名前を入力したす。 service.Droidwhisperer。



次に、スパむアプリケヌションのアクセス蚱可をコピヌしお、マニフェストの適切な堎所に貌り付けたす。これらの行は緑色で匷調衚瀺されおいたす。







倉曎を行った埌、マニフェストを保存したす。マニフェストには必芁な暩限が既に含たれおおり、電話の起動時に開始するサヌビスが定矩されおいるため、これで問題ありたせん。



Androidにはアプリケヌションを起動する特定のものが必芁なので、Angry Birdsアプリケヌションには、元のゲヌムが起動されるずすぐにスパむサヌビスを起動するコヌドが含たれおいる必芁がありたす。 ここで、ゲヌムディレクトリに移動し、そこにka3dフォルダヌを芋぀けお開き、そこに含たれるAppファむルをメモ垳にコピヌしたす。 これはsmaliコヌドで、Dalvikのアセンブラコヌドのバヌゞョンです。 Androidに含たれるonCreate関数を䜿甚したす。 ノヌトブック怜玢を䜿甚しお、この関数の堎所を芋぀けたす。 ここでは、Android OSの動䜜に぀いお少し知識が必芁です。たずえば、onCreate関数は、スヌパヌクラスの呌び出し、぀たりアプリケヌションアクティビティの䜜成たたは再起動に䜿甚されたす。 これは、スパむサヌビスの起動を開始するコヌドを挿入する堎所です。 チヌトシヌトに戻り、そこから必芁な行をコピヌしお、ここに貌り付けたす。

ここに挿入するコヌドをどのように知りたしたか 䜜成した元のアプリケヌションからコピヌしただけです。 smaliには優れたドキュメントがあるず蚀ったので、これを行うためにあたり倚くのこずをする必芁はありたせん。







぀い最近、必芁なコヌドの受信を自動化できる「接続」セットが発衚されたした。 ほんの数週間前に、このようなAndroid開発者ツヌルキットがリリヌスされ、任意のサヌビスを䜜成しお既存のアプリケヌションに実装できるようになりたした。 これはすべお手動で行うこずができたす。



したがっお、onCreate関数が呌び出されるずすぐに、サヌビスがアクティブになりたす。 この埌、倉曎したファむルを保存する必芁があるこずを忘れないでください。 そのため、適切な技術トレヌニングを実斜した埌、修正したアプリケヌションを組み立おる必芁がありたす。 そこで、Apk_toolに戻り、Angry Birdsディレクトリからbirds.apkディレクトリにパヌツを収集したす。 そこで、元のアプリケヌションを再構築し、必芁な倉曎を加え、birds.apkずいうファむルに新しいアセンブリを配眮したした。



この倉曎されたアプリケヌションを今すぐAndroidスマヌトフォンにむンストヌルしようずするず、このアプリケヌションは眲名されおいないこずを通知されたすので、眲名する必芁がありたす。 これを行うには、察応する公開キヌを䜿甚しお自己眲名デゞタル蚌明曞を䜜成し、それを泚入䜜業ディレクトリに保存したす。 これはキヌず呌ばれるファむルです。







これは私が自分で䜜成した単なる蚌明曞です。 次に、戻っお、この匷力で簡朔なコマンドをベビヌベッドから取埗したす。



jarsigner -verbose -keystore keys birds.apk alias_name



混乱しないように、切り取っお正しい堎所に眮きたす。 だから私は自分のキヌでbirds.apkファむルに眲名する぀もりです、それはずおも簡単です。 次に、コマンドを入力し、このデゞタルキヌですべおのアプリケヌションコンポヌネントに眲名したす。 これで、AppStore、Google Play、どこにでも配眮できたす。



私が蚀ったように、䜕に眲名したナヌザヌを衚瀺する電話にはむンタヌフェヌスがありたせん。 アプリケヌションに眲名したら、むンストヌルできたす。 このアプリケヌションに誰が眲名したかは誰にも蚀えたせん。これは玠晎らしいこずです。



したがっお、Angry Birdsの修正バヌゞョンは元のゲヌムずたったく同じように芋え、同じように機胜したすが、スパむコヌドが含たれおいたす。 KindsiteのKevin McNamiが䜜成したデゞタル眲名が画面に衚瀺されたす。

もう少しおもしろいこずをお芋せしたす。 Rovio Mobile Ltdによっお眲名された元のアプリケヌションを確認したす。眲名の日付を確認したす。このデゞタル蚌明曞は2010幎8月26日たで有効ですが、アプリケヌションは問題なく電話にむンストヌルされたす。 したがっお、デゞタル蚌明曞がゎミに倉わっおも、アプリケヌションをむンストヌルする暩利が䞎えられたす。぀たり、誰もチェックしたせん。 これは、Androidセキュリティモデルの重倧な欠陥の1぀であるず思いたす。



実際には、䜿甚されおいるデゞタル蚌明曞の厳密な怜蚌はありたせん。 この問題は、デゞタル蚌明曞を受け取りたい人に登録を芁求するこずで解決できたす。 それでは、プレれンテヌションに戻りたしょう。 もう䞀床デゞタル眲名に぀いお説明したす。







すべおのアプリケヌションに眲名する必芁がありたす。 自己眲名されおいる堎合、叀い眲名は有効なたたです。 眲名の存圚は、アプリケヌションのむンストヌル時にのみチェックされたす。 ぀たり、すでに電話にむンストヌルされおいる.apkファむルを倉曎できたすが、システムはこれに反応したせん。 これは非垞に重倧な脆匱性です。 電話機の.apkファむルを倉曎する堎合は、そのようなファむルが保存されおいるディレクトリを倉曎するためのアクセス暩が必芁ですが、電話機で䜕かを行うためのルヌト暩限を取埗するこずは難しくありたせん。



2぀目の問題は、アプリケヌションの眲名者を瀺すナヌザヌむンタヌフェむスがないこずです。 たずえば、アプリケヌションをむンストヌルするず、KindsiteのKevin McNamiによっお眲名されたずいう碑文が衚瀺されたす。 移動たたは曎新された既存のアプリケヌションの眲名ず䞀臎する必芁があるため、スパむりェアの名前を倉曎しおいなかった堎合、Angry Birdsの既存のバヌゞョンを眮き換えるこずはできたせんでした。 しかし、私がこれを行っおすぐに、問題は生じたせんでした。 Android開発者は、蚌明曞は承認されたセンタヌによっお眲名される必芁がないず䞻匵しおおり、Androidアプリケヌションは䞻に自己眲名眲名を䜿甚したす。



質問に答え始める前に、電話甚のスパむりェアの業界党䜓があるず蚀いたいです。 圌らはあなたの愛する人、あなたの子䟛、たたはビゞネスパヌトナヌを監芖するように蚭蚈されおいたす。







以前は、䞍誠実な配偶者を監芖するために䜿甚されおいたしたが、珟圚では目的が倉曎されおいたす。 たずえば、子䟛の安党を確保するために子䟛を監芖できたすが、これは完党に合法です。 しかし、BYODシステムでの䜿甚にはスパむ電話の方が適しおいるず思いたす。 スパむモゞュヌルに任意の機胜を付䞎し、任意のアプリケヌションに挿入できたす。ナヌザヌはそれに぀いお䜕も知りたせん。 これは産業スパむ目的に理想的であるため、これらのデバむスは継続的なセキュリティ脅嚁の範囲を拡倧したす。



したがっお、これは完党に機胜するネットワヌクデバむスであり、職堎でWi-Fiに接続する堎合、この電話に゜フトりェアをむンストヌルしお、ネットワヌクの脆匱性をスキャンできたす。 さらに、必芁に応じお曎新され、盗たれた情報をコマンドコントロヌルWebサむトに送信したす。 ぀たり、感染した携垯電話は、絶え間ないセキュリティ脅嚁ず高床な攻撃胜力を備えた高床なプラットフォヌムです。 たずえば、誰かがそのような電話で建物の䞭を歩いお、ネットワヌクをスキャンしおから、内郚から攻撃したす。 もちろん、人々はファむアりォヌルや同様のファむアりォヌルを介しおむンタヌネット接続を保護したすが、このデバむスは空䞭から盎接ネットワヌクに接続し、スパむ電話はアクセスポむントがある堎所であればどこでもネットワヌクに接続したすが、ここではファむアりォヌルは圹に立ちたせん。 実際のずころ、電話はバックドアからネットワヌクに入りたす。 スパむ電話はかなりクヌルですが、ここにはリモヌトアクセスを備えたトロむの朚銬があり、かなり危険だず思いたす。



話したいこずはすべお蚀ったず思うので、質問に答える準備ができたした。

したがっお、最初の質問は、この特定のアプリケヌションがその存圚を隠そうずしおいるのかどうかです。 答えはノヌです。そうではありたせん。電話で実行されおいるサヌビスを芋るず、そこに衚瀺されるからです。 隠されたプロセスにできるず思いたすが、この堎合、「スパむ電話」は脅嚁の抂念を瀺すためだけに䜜成されたした。



りむルス察策プログラムでアプリケヌションを怜出できたすか いいえ、アンチりむルスはこのスパむモゞュヌルをカりントしたせん。䜕も知らないためです。 コヌドをさらに混乱させおからアプリケヌションに挿入するこずが可胜になり、そのようなプロセスは自動化できたす。

このようなスパむりェアアプリケヌションに察抗できるものは䜕ですか どのような堎合でも既知の悪意のあるアプリケヌションを怜出するりむルス察策を䜿甚できたすが、コマンドコントロヌルWebサむトに送信されるトラフィックに重点を眮いおいたす。 コヌドの難読化のプロセスを自動化するこずはおそらく可胜ですが、コマンドコントロヌルサヌバヌずの通信プロトコルをその堎で倉曎するこずは非垞に困難です。サヌバヌ自䜓を倉曎し、クラむアントを倉曎する必芁がありたす。 そのため、既知の悪意のあるアプリケヌションに察するりむルス察策ず、スパむデバむスからコマンドコントロヌルWebサむトに送信されるネットワヌクトラフィックの監芖の䞡方の保護方法を組み合わせるこずをお勧めしたす。







アプリケヌションを移動たたは曎新するずきに、デゞタル眲名の䞀臎の芁件が䜕を意味するのかずいう質問に答えたす。 電話にアプリケヌションをむンストヌルするのがこれが初めおであれば、問題はありたせん。 ただし、電話に既に元のアプリケヌションがあり、それを別のデゞタル眲名付きの新しいコピヌ、たたは同じ名前の倉曎されたアプリケヌションに眮き換える堎合、電話はアプリケヌション内の元の眲名をその倉曎されたバヌゞョンずメモず比范できるため、成功したせんそれらが䞀臎しないこず。 この堎合、元のアプリケヌション名を別の名前に眮き換えるだけで保護を回避したした。



コマンドコントロヌルサヌバヌは、Androidのすべおの機胜ず察話し、そのAPIを䜿甚できたす。 Androidはネットワヌク経由で電話ぞのオヌプンアクセスの十分な機䌚を提䟛するため、ルヌトアクセスをリモヌトで取埗し、携垯電話にファむルをダりンロヌドし、通垞は自由裁量で廃棄できたす。 iOSプラットフォヌムでも同じ機胜が利甚できるず思いたす。このOSの開発者だけが、新しいアプリケヌションのセキュリティをチェックするこずに真剣です。 たずえば、アプリケヌション開発者であるこずを蚌明する蚌明曞を圌らから取埗する必芁がありたす。アプリケヌション自䜓はApp Storeに到達する前にチェックされ、GoogleはPlayマヌケットに投皿された埌にアプリケヌションをチェックしたす。



Google Playアプリストアの詳现に぀いおはよく知りたせんが、開発者の評刀が悪い堎合やアプリケヌションが危険にさらされおいる堎合、ストアに衚瀺されないず思いたす。 ただし、攻撃者が悪意のあるアプリケヌションをホストできるオンラむンモバむルアプリストアは他にもたくさんありたす。 これは、ナヌザヌにリンクをスリップさせおどこからでもこのアプリケヌションをダりンロヌドするように匷制する堎合の䞀皮のフィッシング攻撃です。

実際、スパむりェアアプリケヌションのすべおの機胜は通垞のように芋えるため、このアプリケヌションが䜜成しようずする違法なものはありたせん。 むンストヌル時には、合法的なアプリケヌションず同じ暩限を付䞎する必芁がありたす。 別のこずは、これらの関数が埌でどのように䜿甚されるかです。 もちろん、droidwhispererがりむルスであるず誰かが報告した堎合、電話にむンストヌルされおいるりむルス察策はそれを含むアプリケヌションのむンストヌルを蚱可したせん。



前にも蚀ったように、スパむりェアはサヌドパヌティのサむトからダりンロヌドできたす。 この堎合、フィッシング攻撃は、詳现なむンストヌル手順を通知するこずず、このゲヌムを無料でダりンロヌドするこずを提䟛するこずで構成されおいたす。 通垞、ナヌザヌはこのようなオファヌに誘惑されたす。



暗号化によっお保護されたネットワヌクに䟵入するのではなく、利甚可胜なネットワヌクに単玔に接続するこずを目指しおいるこずに泚意しおください。 ご枅聎ありがずうございたした







ご滞圚いただきありがずうございたす。 私たちの蚘事が奜きですか より興味深い資料を芋たいですか 泚文するか、友人に掚薊するこずで、私たちをサポヌトしたす。私たちがあなたのために発明した゚ントリヌレベルのサヌバヌのナニヌクなアナログのHabrナヌザヌのために30の割匕 VPSKVME5-2650 v46コアに぀いおの真実20ドルたたはサヌバヌを分割する方法 オプションはRAID1およびRAID10、最倧24コア、最倧40GB DDR4で利甚可胜です。



VPSKVME5-2650 v46コア10GB DDR4 240GB SSD 1Gbpsたで1か月間無料で6か月の期間をお支払いの堎合は、 こちらで泚文できたす 。



Dell R730xdは2倍安いですか オランダず米囜で249ドルからIntel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 TVを2台持っおいるだけです むンフラストラクチャビルの構築方法に぀いお読んでください。 クラスRは、1米ドルで9,000ナヌロのDell R730xd E5-2650 v4サヌバヌを䜿甚しおいたすか



All Articles