NKNを悪用するNKAbuse

ほぼこもセキュリティニュース By Terilogy Worx

NKAbuseは多機能なマルウェアです。
どういったものなのでしょうか。

  • マルチプラットフォーム
    ターゲットとなるOSは基本的にLinuxなのですが、いろいろなプラットフォームで動作します。
    386, arm64, arm, mips, mipsel, mips64, misp64el、の環境で動作します。
    このマルウェアはGo言語で書かれていて、その効能です。
    このような広いプラットフォームで動作しますので、単にLinuxの動作するパソコンだけがターゲットということではなく、IoTデバイスもターゲットとなります。

     

  • 機能1:DDoS
    実に多彩なDDoS攻撃機能を搭載しています。
    その数は、12種類です。
    http_flood_HTTPGetFloodPayload, http_flood_HTTPPostFloodPayload,
    tcp_flood_TCPFloodPayload, udp_flood_UDPFloodPayload,
    ping_flood_PINGFloodPayload, tcp_syn_flood_TCPSynFloodPayload,
    ssl_flood_SSLFloodPayload, http_slowloris_HTTPSlowlorisPayload,
    http_slow_body_HTTPSlowBodyPayload, http_slow_read_HTTPSlowReadPayload,
    icmp_flood_ICMPFloodPayload, dns_nxdomain_DNSNXDOMAINPayloadといったものです。
    内容は名前から想像できる通りです。

     

  • 機能2:RAT
    リモートアクセストロイ機能を搭載しています。
    C2の指示で動作します。
    定期的に通信し、活動を維持します。
    IPアドレスなどのホストの情報収集機能に加えてスクリーンショットを取得する機能も有します。
    ファイルの作成や抽出、プロセスリストの作成、システムコマンドの実行も可能です。

     

  • NKNによるC2接続
    NKNはNew Kind of Networkです。
    NKNは分散化とプライバシーを優先するピアツーピア(P2P)およびブロックチェーン指向のネットワークプロトコルで、これ自体は一般に利用されている機構です。
    60000を超える公式ノードが現在稼働しており、それらのノードを適宜利用し、目的の宛先に最短の経路を選択するように通信することができます。
    この通信インフラを悪用してC2と通信します。

NKNは通常、30001以降のポート番号で通信します。
TCPもUDPも使います。
実装はいくつかありますが、GoでのNKNのある実装では30001が使われます。
こういったレアなプロトコルは、このようなHigh portを使うことが多いように思います。
入ってくる側だけでなく、出ていく側についても、しっかりアクセスコントロールすることは重要なのだと感じます。

参考記事(外部リンク):Unveiling NKAbuse: a new multiplatform threat abusing the
NKN protocol

securelist.com/unveiling-nkabuse/111512/