MyChatのNetworkSoftwareSolutionsの脆匱性修正枈みおよび未修正

Pandion2013幎4月10日にリリヌスされた最新のバヌゞョン2.6.114のような玠晎らしいjabberクラむアントの開発が䞭止されたため、私のケヌスでメッセヌゞングに䜿甚されたjabber OpenfireサヌバヌずPandionクラむアントを接続するための賢明な代替手段を芋぀けるこずが決定されたした小さな組織内。



Pandionが代衚するクラむアントはその機胜ず䜿いやすさに満足しおいたしたが、最新バヌゞョンではファむル共有が倱われ、怜出されたバグの数が気づき始めたしたOSのテヌマを倉曎したり、リモヌトコントロヌル゜フトりェアを䜿甚しおPCにリモヌト接続したりするず、プロセッサの負荷が高くなりたす、msxml6.dllラむブラリぞのリンクで頻繁にクラッシュする、Internet Explorerの新しいバヌゞョンの゚ンゞンがサポヌトされおいないために䞀郚の機胜が動䜜しない、他のナヌザヌからのメッセヌゞが受信されないなどの問題 tnye詳现。 原則ずしお、新しいバヌゞョンのOpenFireをむンストヌルしお、たずえばMirandaなどの代替クラむアントの䜿甚を開始すれば十分ですが、それ以前はNetworkSoftwareSolutionsのりクラむナの開発者によるMyChatネットワヌクチャットに興味がありたした。



MyChatを詳しく知る過皋で、いく぀かの脆匱性が発芋されたした。 最初の脆匱性は、サヌバヌ䞊のFTP認蚌の機胜にありたす。 MyChatクラむアントでは、FTPプロトコルを䜿甚しお、クラむアント間で盎接デヌタを受信および転送したす。サヌバヌでは、サヌバヌを介したクラむアント間のみのデヌタ転送察応する蚭定が有効な堎合、個人的に投皿されたデヌタぞの共有アクセスおよびパブリックアクセスの組織化に䜿甚されたす。 FTP経由で受信したデヌタを保存するには、デフォルトでサヌバヌの堎合は䞀般プロファむルに、クラむアントの堎合は個人プロファむルにあるフォルダヌが䜿甚されたす。



MyChatサヌバヌにはFTP認蚌にいく぀かの違いがあり、それぞれを説明するこずはできたせん。 各MyChatナヌザヌには䞀意のUIN識別子があり、アカりント䜜成時に自動的に割り圓おられたす。番号は1から始たりたす。MyChatのドキュメントによるず、UINずパスワヌドはFTP経由の認蚌のナヌザヌ名ずパスワヌドずしお䜿甚されたす。 、内郚プロトコルを䜿甚しおクラむアントを認蚌するために䜿甚されたす十分に文曞化されおおり、䞀般公開されおいたす。 FTPを介しおMyChatサヌバヌず察話するには、それをサポヌトする任意のアプリケヌションを䜿甚できたす。蚭定でパッシブ亀換モヌドを有効にし、MyChatサヌバヌのIPアドレスず、ポヌト20000デフォルト、ナヌザヌ名ずパスワヌドずしおの数倀UINを指定する必芁がありたす。 このような認蚌パラメヌタヌを䜿甚しおサヌバヌに接続するず、個人フォルダヌが読み取りおよび曞き蟌みモヌドで䜿甚可胜になりたす。 このようなアクセスに加えお、開発者は、読み取りモヌドでサヌバヌ䞊の個人フォルダヌぞのアクセスを誰にでも提䟛したす。 これを行うには、パスワヌドずしおpublicを指定したす。 MyChatにはActive Directoryず統合する機胜もありたす。これにより、ドメむンナヌザヌアカりントをむンポヌトし、それらを承認に䜿甚できたす。 たずえば、FTPプロトコルを介したドメむンアカりントの承認方法は、どこにも指定されおいたせん。 Wiresharkネットワヌクプロトコルアナラむザヌの助けを借りお、認蚌のために、ドメむンナヌザヌのむンポヌトに割り圓おられたUINからペアが䜿甚され、ログむン名ず文字列* DomainUser *で構成されるパスワヌドが䜿甚されるこずがわかりたしたたずえば、ナヌザヌ名がuser1の堎合、そのパスワヌドはuser1 * DomainUser *。 したがっお、MyChatでドメむンアカりントを䜿甚するず、サヌバヌ䞊のデヌタが䞍正に削陀たたは䜜成される可胜性がありたす。 開発者には脆匱性が2014幎7月27日に通知されたしたが、珟時点以降、2016幎4月4日、2016幎3月23日に入手可胜なMyChat 5.18.0の最新バヌゞョンの脆匱性は修正されおいたせん。 サヌバヌ䞊で説明されおいるFTP承認の3぀の方法はすべお、以䞋で説明する脆匱性のいずれかでも䜿甚できたす。



2番目に発芋された脆匱性は、別のナヌザヌから受信したファむルが保存されたフォルダヌぞのフルアクセスを取埗する機胜です。 この脆匱性は、ナヌザヌの1人が別のナヌザヌから少なくずも1぀のファむルを受信した瞬間から䜜甚を開始し、クラむアントの再起動埌に機胜しなくなりたす。 脆匱性が有効になった埌、それを利甚するためには、送信者のUINをログむンおよびパスワヌドずしお䜿甚しお、ポヌト10000デフォルトのパッシブ亀換モヌドでFTPを介しお被害者クラむアントに接続するだけで十分です。 したがっお、MyChatのUIN識別子のおおよその範囲ずクラむアント被害者のIPアドレスがわかっおいる堎合、脆匱性がトリガヌされるたで、2、2、3、3などの圢匏のナヌザヌ名ずパスワヌドを䜿甚しお定期的にログむンを詊みるこずができたす。 開発者には2014幎7月27日の脆匱性が通知されたしたが、珟時点では脆匱性は解決されおいたせん。



MyChatで芋぀かった3番目の脆匱性は、FTP経由で接続するずきにルヌトフォルダの制限をバむパスするこずです。 この脆匱性を悪甚するには、接続時にリモヌトディレクトリずしお「/ ..」ずいう圢匏のパスを指定する必芁がありたす。 これにより、1぀䞊のレベルのフォルダヌに移動し、実行された蚱可の暩限に応じお、読み取りモヌドたたは読み取り/曞き蟌みモヌドですべおのデヌタにアクセスできたす。 この脆匱性の制限は、接続セッションのネストの第2レベルのフォルダヌから戻るこずができないこずです。 この脆匱性により、MyChatサヌバヌのログずバックアップ、および送信時にサヌバヌに接続しおいなかったナヌザヌに送信されたデヌタにアクセスするこずが可胜になりたす。 さらに、FTPサヌバヌフォルダヌのルヌトで特別なオフラむンフォルダヌが䜿甚可胜になり、その䞭にナヌザヌのUINを名前ずしお䜿甚するフォルダヌがありたす。 ナヌザヌにデヌタを転送するには、送信者のUINを含むフォルダヌをそのUINを含むフォルダヌに䜜成し、ファむルをそのフォルダヌに配眮するだけで十分です。 クラむアントを起動した埌、承認されたナヌザヌの少なくずも1人がファむルを送信するず、このナヌザヌずオフラむンフォルダヌのすべおのナヌザヌからのファむルを受け入れるように求められたす。 したがっお、MyChatナヌザヌは感染のリスクがある可胜性がありたす。 クラむアントの堎合、デフォルトで他のナヌザヌから受信したすべおのファむルを含むフォルダヌが脆匱なフォルダヌになりたす。 刀明したように、この脆匱性はFTPプロトコルの実装を担圓するコンポヌネントの1぀の叀いバヌゞョンを䜿甚するこずにより匕き起こされたした。 開発者は2014幎7月27日に脆匱性に぀いお通知を受け、2014幎7月28日に脆匱性は排陀されたした。



MyChatの4番目の脆匱性は、ドメむン認蚌の䜿甚に関するものです。 この脆匱性の本質は、サヌバヌのアドレス、ドメむン名、およびドメむンナヌザヌを知っおおり、サヌバヌに接続する胜力も持っおいるため、攻撃者がこのデヌタで正垞にログむンできるこずです。 攻撃者がレゞストリブランチ「HKEY_CURRENT_USER \ Software \ MyChat Client」に文字列パラメヌタヌ「Domain」、「IP」、「Port」、「ServerPassword」空の倀の倀を入力するだけで十分ですただし、これはドメむン認蚌モヌドを有効にする文曞化された方法です 、ドメむンの名前ず䞀臎するロヌカルアカりントをオペレヌティングシステムに䜜成し、それを䜿甚しおログむンしたす。 これで、MyChatクラむアントが起動するず、ドメむンナヌザヌに代わっおサヌバヌに正垞に接続したす。 したがっお、MyChatはセキュアなNTLMたたはKerberos透過認蚌オプションを䜿甚しおいないず結論付けるこずができたす。 開発者は2014幎8月10日に脆匱性に぀いお通知を受けたしたが、脆匱性はただ解決されおいたせん。



5番目の脆匱性はMyChatサヌバヌにあり、䜿甚されるプロトコルのクラむアントからcs_hello greetingコマンドを受信する実装の゚ラヌに関連するサヌビス拒吊を匕き起こす可胜性にありたす。 脆匱なバヌゞョンのMyChatサヌバヌでは、無蚱可のナヌザヌから無制限の数のcs_helloコマンドを受け取るこずができたす。 この堎合、MyChatサヌバヌがサヌビス拒吊攻撃を受けやすいずいう本質は、クラむアントから受信したcs_helloコマンドがサヌバヌのメモリ消費量を再び増加させるこずです。 MyChatサヌバヌは32ビットアプリケヌションであるため、オペレヌティングシステムによっお割り圓おられるメモリの量は1.8 GB以内です。 この実隓では、サヌバヌに察する攻撃を成功させるには数癟䞇のcs_helloコマンドを送信する必芁があり、これには倚くの時間がかかるこずが瀺されたした。 JSON圢匏のパラメヌタヌの1぀に任意のデヌタを入力するこずで、チヌムのサむズを増やすこずができたすが、送信されるデヌタのサむズが倧きいため、このような攻撃にも時間がかかりたす。 ただし、MyChatプロトコルでサポヌトされおいるGZIP圧瞮を䜿甚するこずにより、この攻撃を䜕千回も加速できたす。 したがっお、65 KBの同じ文字を持぀文字列は、100バむトに圧瞮できたす。 このようなデヌタを䜿甚しおサヌバヌに繰り返し送信されるcs_helloコマンドは、RAMの超高速消費に぀ながり、サヌバヌが内郚ニヌズにメモリを割り圓おられない限界に達し、最終的にパフォヌマンスに圱響したす。 開発者は2014幎12月6日に脆匱性に぀いお通知を受け、2014幎8月12日に脆匱性は排陀されたした。



この蚘事から結論を導き出すこずができたす開発者はすべおの脆匱性にタむムリヌに察応せず、それらの䞀郚を長いボックスで削陀するのを延期したり、単に無芖したりするだけでなく、䜿甚されおいるコンポヌネントの倉曎を垞に監芖するわけではありたせん倚くの脆匱性は、セキュリティメカニズムの実装を真に安党にするこずをためらうこずや怠ofの明確な結果であるこずに譊戒し、むラむラさせられたす。



All Articles