SecurityHeroblog

264カ所が一度ずつかすめた — 扉の前が薄くなった日

9月6日、画面共有の扉を叩いた場所が一日で100カ所から264カ所になりました。ところが叩いた回数は1.4倍増えただけで、一カ所あたりの回数はむしろ半分になりました。強く叩く少数の上に、薄くかすめる多数が重なった日の記録です。

マンションの玄関ドアを朝開けると、チラシが貼ってあります。昨日も30枚、今日も30枚だとしましょう。

同じ30枚でしょうか。

昨日は3人が10枚ずつ貼っていきました。今日は30人が1枚ずつ貼っていきました。扉の前に積もった紙は同じ30枚なのに、その前を通り過ぎた人の数は10倍になりました。

紙だけ数えれば、二つの日は同じ日です。人を数えて初めて、違う日になります。

昨日わたしたちのサーバーで起きたことが、まさにこれです。貼られた紙は1.4倍増えたのに、貼っていった場所は2.6倍になりました。


まず、数字から見ていきます

事実 わたしたちはハニーポットサーバーを2台動かしています。ハニーポットとは、わざと開けておいて誰が何をするのかを見張るおとりサーバーです。昨日そのうちの1台(センサー02)の画面共有ポートを叩いた場所は264カ所でした。一昨日は100カ所でした。

事実 この264カ所は観測12日分(8/26〜9/6)の中で最高です。12日分を順に並べると 40 · 38 · 50 · 36 · 45 · 46 · 78 · 62 · 135 · 69 · 100 · 264 です。直前の最高値だった9月3日の135カ所と比べると1.96倍、一昨日の100カ所と比べると2.64倍です。

事実 ところが叩いた回数は33,975件から48,605件になりました。1.4倍です。

推定 増えた方向が互いに違います。紙は1.4倍増えたのに、人は2.6倍になりました。割ってみると答えが出ます。

日付 叩いた回数 叩いた場所 一カ所あたり
8月29日 40,525件 36カ所 1,125.7回
9月5日 33,975件 100カ所 339.8回
9月6日 48,605件 264カ所 184.1回

事実 一カ所が叩いた回数が、昨日一日で半分になりました。一日を分に割ってみると感覚がつかめます。8月29日には一カ所が1分20秒ごとに一度ずつ、一日中ドアノブを回していました。一昨日は4分に一度、昨日は8分に一度です。

推定 強く叩く側が弱まったのではなく、薄くかすめる側が新たに重なった形と読みます。チラシを100枚ずつ貼っていた人はそのままいて、1枚だけ貼って通り過ぎる人がはるかに多くなったのです。

その薄い層が実際に見えます

事実 昨日センサー02に接触した483カ所のうち、上位12カ所が作ったイベントが44,439件でした。一日全体50,417件の**88.1%**です。

事実 その12カ所の中でも層が分かれます。上位9カ所がそれぞれ3,499〜5,379件ずつ、合わせて42,990件(85.3%)を作りました。10位からは700件 · 514件 · 235件へとがくんと落ちます。

事実 上位12カ所を除いた残り471カ所が作ったのは全部合わせて5,978件です。一カ所あたり平均12.7件です。

推定 チラシに置き換えるとこうなります。毎日来る9人は一人あたり4千枚ずつ貼っていきます。残りの471人は一人あたり12枚ずつ貼って通り過ぎました。同じ扉の前に性格のまったく違う二つの群れが重なっていて、昨日増えたのは後ろのほうです。

扉の前を通った最大897カ所

事実 サーバー2台を合わせると、昨日接触した固有の発信元は最大897カ所です。アーカイブ22日のうち最も大きい値で、直前の最大は9月3日の777カ所でした。

事実 「最大」と書く理由があります。2台のサーバーに同じ場所が重複して来たのかを、わたしたちのデータは教えてくれません。だから二つの値をそのまま足した上限です。重複した分だけ実際の数字はもっと小さくなります。

事実 このサーバー2台はどこにもアドレスを知らせたことがありません。 宣伝したことも、リンクを張っておいたこともありません。

推定 だからこれは、わたしたちを選んで訪ねてきたのではありません。アドレスを最初から最後までなぞっていて引っかかったのです。ポートを開けておくだけで、一日のうちにリストに載ります。


同じ日、扉ごとに性格がまるで違った

事実 センサー02は扉を6つ開けておきました。昨日一日の接触は50,417件、固有の発信元は483カ所でした。6サービスの接触を足すとちょうど50,417で総計と合います。

扉 (サービス) ポート 叩いた回数 叩いた場所 一カ所あたり
VNC (画面共有) 5900 48,605件 (96.4%) 264カ所 184.1回
RDP (リモートデスクトップ) 3389 1,474件 111カ所 13.3回
SMB (ファイル共有) 445 200件 38カ所 5.3回
MSSQL (データベース) 1433 77件 46カ所 1.67回
LDAP (アカウント照会) 389 14件 8カ所 1.75回
ADB (Androidデバッグ) (未記録) 47件 (未記録) —

事実 同じ日の同じサーバーなのに分布が正反対です。画面共有の扉は264カ所が4万8千回叩き、データベースの扉は46カ所がたった77回叩きました。一カ所が1.67回ずつだけ触れて去ったわけです。

事実 LDAPの扉の14件は観測12日のうち最低です。直前の最低が9月3日の36件でした。

推定 扉ごとに貼っていった紙の数が違うのではなく、訪ねてきた目的が違うものと読めます。 ある扉は一日中叩いてみる対象であり、ある扉は「ここにこの扉があるな」と一度書き留めて通り過ぎる対象です。

相手が自ら語ったこと

事実 画面共有は接続する前に、互いに「わたしは何番のバージョンで話すよ」と歩調を合わせます。昨日相手が提案したバージョンは 003.003 が47,446回、003.008 が889回でした。バージョンが記録された48,335件の**98.2%**が古いバージョンです。

事実 ファイル共有のほうも似ています。相手が提案した方言(会話方式)243件のうち、最新系列の SMB 2.??? は**2件(0.8%)**だけで、残りの241件は NT LM 0.12 · LANMAN1.0 · Windows for Workgroups 3.1 のような古い語彙でした。

事実 リモートデスクトップのほうには、接続時に付いてくる「クッキー」という短い文字列があります。昨日の値は hello 897 · <ip> 427 · Administr 3 · 空の値 3 · nmap 1 · eltons 1 でした。公開スキャナーの名前をそのまま書いて送ってきた接触が1件ありました。

事実 ただしクッキーの値が何を意味するのかは判断しません。クライアントがどんな文字列でも埋められる欄なので、特定のツールが来たと言う根拠にはなりません。

事実 そしてセンサー02にはログイン成功も、コマンドも、認証情報も存在しません。 このサーバーは低対話型なので、扉を実際に開けてはやらないからです。ここで言えるのは「どの扉を何カ所が何回叩いたか」までです。チラシが何枚貼られたかは数えますが、誰が入ってきて何をしたのかは、そもそも記録され得ません。

事実 だから昨日このサーバーは4万8千回叩かれても得たファイルは0個です。Androidデバッグの通路に47セッションが入ってきたのに、残った検体は0件でした。この通路は9月2日に23セッションで検体1件、9月3日に32セッションで検体4件、8月28日に87セッションで検体4件を残したことのあるチャネルですが、昨日は何もありませんでした。


扉が実際に開くほう — センサー01

チラシは扉に貼られるだけです。扉を開けるのは別の話です。隣にあるサーバー1台は扉が実際に開きます。

事実 昨日センサー01にはセッション2,207件が入ってきました。固有の発信元414カ所、ログイン試行1,889回、コマンド2,711個、画面録画1,536件です。

事実 ログイン試行1,889回は一日で割ると46秒に一度の割合です。コマンド2,711個は32秒に一度です。急ぎもせず、休みもしない速度です。

事実 昨日サーバーの中で起きたことを種類別に数えるとこうなります。

何をしたか 回数 比べるもの
偵察 — システムを調べる 1,374回 全コマンド2,711個の50.7%
実行権限の付与 192回 ダウンロード34回の5.6倍
ダウンロード後の実行 34回 —
ファイルのダウンロード 34回 上と正確に同じ
永続化 — SSH鍵の植え込み 18回 —
痕跡の削除 15回 —

事実 「偵察」1,374回は一昨日の770回の1.78倍であり、8月28日(995回)以来9日ぶりの最高値です。

事実 「実行権限の付与」はファイルに**「これは実行してもいいファイルだよ」という印を付ける動作**です。Linuxではこの印がないと、プログラムであってもそのまま動きません。

事実 「ファイルのダウンロード」34回と「ダウンロード後の実行」34回が正確に同じです。 ダウンロードしたものは例外なく実行段階へ進んだという意味です。この二つの値が一致するのは、8月22日以降ほぼ毎日繰り返されています。

事実 ただしコマンド2,711個のうち**意図が付いたものは1,667個(61.5%)**だけです。残りの1,044個が何だったのかは、原文がわたしたちの手元にないため言えません。

34秒でコマンド48個、しかし分類は0

事実 昨日ログインに成功しコマンドまで残したセッション5件のうち、一つが目に留まります。07時05分15秒から49秒まで、34秒間のTelnetセッションでした。別名はATK-60E535(218.161.x.x)です。

事実 このセッションはコマンド48個、ダウンロード12件です。34秒でコマンド48個なら0.7秒に一つの割合です。昨日のセッションの中で完結性スコアが最も高いものでした。

事実 ところが意図リストが空です。 昨日最も多く動いたセッションなのに、わたしたちの分類器はコマンド48個のうち一つにも意味を付けられませんでした。理由はデータからは分かりません。

事実 このセッションが受け取ったものは2種類です。1バイトの空ファイル(11回)と、202バイトのシェルスクリプト1つです。1バイトなら文字1つ分、202バイトならショートメッセージ1行半ほどになります。

事実 その202バイトのスクリプト(0c99433c…)は、アーカイブ22日分のうち8月21日と8月23日にだけあったファイルです。14日ぶりに昨日再び現れ、3回目の観測となりました。

3.7秒セッション、9回目

事実 11時19分01秒から04秒まで、3.7秒のSSHセッションが一つありました(ATK-CA5936、130.12.x.x)。ひと息つく時間です。

事実 コマンドはたった1個なのに意図は5種類(偵察 · ファイルのダウンロード · 実行権限の付与 · ダウンロード後の実行 · SSH鍵の植え込み)がすべて付き、ファイル2個を受け取っていきました。399バイトのOpenSSH秘密鍵と54バイトのテキストです。

事実 両方のハッシュとも8月19日以降アーカイブ8個のファイルにあります。昨日が9回目です。接続プログラムの標識も SSH-2.0-Go で毎回同じです。

推定 チラシの比喩に戻るとこうなります。扉の前を通り過ぎた264カ所が紙を貼っている間に、ある一カ所は3.7秒で入って出ていきました。 前者は数えるのが簡単で、後者は目につきにくいのです。

最も多く来た標識と、物を置いていった標識

事実 接続してきたプログラムごとに指紋が一つずつ残ります。相手のプログラムが「わたしはこういう方式で会話する」と先に知らせてくる値を、ひとかたまりに要約した値です。

事実 昨日記録された指紋15個のうち、最も多くの場所から来たのは acaa53e0…(SSH-2.0-OpenSSH_7.4)で199カ所でした。センサー01全体の発信元414カ所の48.1%です。ところがこの199カ所の束が置いていった検体は1件もありません。

事実 昨日実際にファイルを置いていった標識は 16443846…(SSH-2.0-Go)一つだけで、この標識を付けて来た場所は2カ所でした。

事実 ここで一度立ち止まります。この値はプログラムのビルドの指紋であって、人の指紋ではありません。 同じディストリビューションが標準で入れてくれるSSHを使う人たちは、互いに何の関係もなくても同じ値を持ちます。199カ所を一つの組織として読んではいけません。 昨日の指紋の束が37個だからといって、主体が37個という意味でもありません。


昨日一日の全体

事実 扉が実際に開くほう(センサー01)の一日の集計です。

項目 昨日 比べるもの
セッション 2,207件 一カ所あたり5.3件
固有の発信元 414カ所 —
ログイン試行 1,889回 一カ所あたり平均4.6回 · 一日で46秒に一度
コマンド 2,711個 意図が付いたものは1,667個(61.5%)
ポート2222 (SSH) 1,883セッション 全体の85.3%
ポート2223 (Telnet) 324セッション ところが完結セッション5件のうち4件がこちら
画面録画 1,536件 —

事実 ポート別の合計(1,883 + 324)がセッション総計2,207と正確に合います。 一昨日は2件がずれていましたが、昨日はずれた値がありませんでした。

事実 そして隣のサーバー(センサー02)のセッション単位はこちらと違うので足しません。 2台のサーバーの固有IPの合計も、重複が分からないため上限897カ所としてのみ記します。

時間順に並べるとこうなります。「アーカイブ照合」と書かれた行に注目してください — 昨日一日だけ見ても見えず、過去の記録と並べて初めて見えるものです。

  1. 事実 接触50,417件 / 固有の発信元483カ所。サービス別にVNC(5900) 48,605件 · RDP(3389) 1,474件 · SMB(445) 200件 · MSSQL(1433) 77件 · LDAP(389) 14件 · ADB 47件であり、この6つを足すと50,417 で総計と正確に一致する。VNC が全体の96.4%だ
  2. 事実 VNC 固有の発信元264カ所は観測12日分(8/26~9/6: 40·38·50·36·45·46·78·62·135·69·100·264)のうち最大であり、直前の最高値135(9/3)の1.96倍、昨日の100の2.64倍だ。センサー02 全体の固有の発信元483カ所も12日のバンド247~327 を外れた値で、直前の最高327(9/5)の1.48倍だ
  3. 事実 発信元あたりのVNC接触数は 48,605 ÷ 264 = 184.1回だ。昨日は 33,975 ÷ 100 = 339.8回、8/29 は 40,525 ÷ 36 = 1,125.7回だった。接触の総量は似ているのに主体が増えることで、一カ所あたりの負担が薄くなり続けている
  4. 事実 上位12個の別名のイベント合計は44,439件で、全体50,417件の88.1%だ。そのうち9カ所が3,499~5,379件ずつを作り(合計42,990件、85.3%)、10位からは700 · 514 · 235件へとがくんと落ちる。上位12カ所を除いた残り471カ所は5,978件、一カ所あたり平均12.7件だ
  5. 事実 同じ日でもサービスごとに分布が正反対だ — VNC は264カ所が48,605回(発信元あたり184.1回)、MSSQL は46カ所が77回(発信元あたり1.67回)、LDAP は8カ所が14回(発信元あたり1.75回)接触した。LDAP 14件は観測12日のうち最低だ(直前の最低36件、9/3)
  6. 事実 VNC ネゴシエーションで相手が提案したRFBバージョンは003.003 が47,446回、003.008 が889回だ — バージョンが記録された48,335件の98.2%が003.003 だ。SMB 方言提案243件のうち 'SMB 2.???' は2件だけで、残り241件はNT LM 0.12 · LANMAN1.0 · LM1.2X002 · PC NETWORK PROGRAM 1.0 · Windows for Workgroups 3.1 のようなSMB1系列の語彙だ。RDP クッキーは hello 897 · <ip> 427 · Administr 3 · 空の値 3 · nmap 1 · eltons 1 だ
  7. 事実 ADB セッション47件に保存された検体は0 だ。アーカイブ上ADB は9/2 に23セッション·検体1件、9/3 に32セッション·検体4件、8/28 に87セッション·検体4件を残したチャネルだ。今日は接触件数が昨日(111セッション)より減ったが、8/31(52)以降で2番目に多いにもかかわらず投入物は0 だ
  8. 事実 セッション2,207件 / 固有の発信元414カ所 / ログイン試行1,889回 / コマンド2,711個 / TTY録画1,536件。ポート2222(SSH) 1,883件 + ポート2223(Telnet) 324件 = 2,207 でセッション総計と一致する(9/5 には2件がずれていた)。SSH が85.3%、Telnetが14.7%だ
  9. 事実 偵察 — システム1,374 · 実行権限の付与192 · ダウンロード後の実行34 · ファイルのダウンロード34 · 永続化(SSH鍵の植え込み)18 · 痕跡の削除15。合計1,667 で全コマンド2,711個の61.5%であり、偵察ひとつで全コマンドの50.7%だ。昨日の偵察770 → 今日1,374 で1.78倍であり、8/28(995)以来9日ぶりの最高値だ
  10. 事実 「ファイルのダウンロード」34回と「ダウンロード後の実行」34回が正確に同じだ — ダウンロードする行為は例外なく実行段階へつながった。この二つの値が一致するパターンは8/22 以降ほとんどの日に繰り返される
  11. 事実 ATK-0B4A6E(122.97.x.x) Telnetセッション。ログイン成功、コマンド31個、ダウンロード1件、TTY録画あり。意図はファイルのダウンロード → 実行権限の付与 → ダウンロード後の実行の3段階だ。この別名は hxxp://185[.]93[.]89[.]72/wget の306バイトのシェルスクリプトを配達した9個の別名のうちの一つだ
  12. 事実 ATK-60E535(218.161.x.x) Telnetセッション。completeness 43 で今日の最高値であり、コマンド48個·ダウンロード12件なのにintents 配列が空だ — ログインに成功し最も多く動いたセッションなのに、わたしたちの分類器は意図を一つも付けられなかった。このセッションが受け取ったものは1バイトの空ファイル(01ba4719…、11回)と202バイトのPOSIXシェルスクリプト(0c99433c…)の2種類だ
  13. 事実 202バイトのPOSIXシェルスクリプト 0c99433c… はアーカイブ22日分のうち8/21 と8/23 にのみ記録されている。14日ぶりに再び現れた今日が3回目の観測だ
  14. 事実 ATK-CA5936(130.12.x.x) SSHセッション。コマンド1個で5種類の意図(偵察 · ファイルのダウンロード · 実行権限の付与 · ダウンロード後の実行 · SSH鍵の植え込み)がすべて付き、ダウンロード2件を残した — 399バイトのOpenSSH秘密鍵(43728fbf…)と54バイトのASCIIテキスト(00b6f15c…)だ。両方のハッシュとも8/19 以降アーカイブ8個のファイルにあり、今日が9回目だ。クライアントはSSH-2.0-Go、指紋 16443846184eafde36765c9bab2f4397 だ
  15. 事実 今日記録された指紋15個のうち検体を配達したものは16443846…(SSH-2.0-Go、今日のIP 2カ所)一つだけだ。今日のIPが最も多い指紋は acaa53e0…(SSH-2.0-OpenSSH_7.4)で199カ所 — 01 全体の発信元414カ所の48.1%なのに検体は1件も配達しなかった
  16. 事実 今日保存された9種のうち7種が過去のブリーフにあるハッシュだ — a8460f44…(389バイトの公開鍵)は8/16 以降22日連続、a6296a79…(306バイトのシェルスクリプト)は8/17 以降21日目で同一ハッシュ·同一URL、43728fbf…·00b6f15c… は8/19 以降9回目、4af5a5c9…(9バイト)は19個のファイルに、01ba4719…(1バイト)と0c99433c…(202バイト)にも記録がある。新規ハッシュは32b813f0… と ba9ca1f7… の二つだけだ
  17. 事実 新規2種はどちらも hxxp://5[.]182[.]210[.]174/ok から来ており、どちらも正確に1,608バイトのBourne-Againシェルスクリプトであり、どちらも同じ別名ATK-99DE57 が配達した。同じURL·同じサイズ·異なるハッシュが一日に二つ出たことは8/29 にもあったことだ。8/25 のブリーフがこのURL のハッシュを10種、8/29 が2種、9/5 が1種さらに記録したので、今日の分まで含めて最低14種であり、サイズは8/17 の初観測以降毎回1,608バイトで同じだ
  18. 事実 互いに異なるIP 3カ所以上で観測され原文を引用できる組み合わせは20個だ。最多はadmin/admin(22カ所·47回)、次が345gs5662d34/345gs5662d34(15カ所·15回)、support/support(8カ所·11回)、user/user(7カ所·9回)、root/3245gs5662d34(7カ所·7回)だ。引用せず個数だけ数えた単一出所の組み合わせは911個だ
  19. 事実 固有IPの上限897カ所。センサー間の固有IPの積集合が分からないため上限だ。アーカイブ22日のうち最大であり、直前の最大は9/3 の777カ所だ。このサーバー2台はどこにもアドレスを知らせたことがない

上で目に留まるのは4行目と最後の行です。一つは「薄い層が471カ所も新たに重なった」であり、もう一つは「だから一日の総合計が22日で最大になった」だからです。同じ話の前と後ろです。


扉の前に置かれたもの

事実 防御にお使いいただけるよう、値をそのまま書き写します。値をクリックするとコピーされます。 アドレスは接続されないよう変形(defang)してありますので、そのままお使いください。一番上の2行とその下の2行を比べてみてください — 一つは書いた途端に古くなる値で、もう一つは22日間古くならなかった値です。

sha256
32b813f04f3249f133b6d5109a41ef9b66cf65e8ed7018c7ba5d109abcf9a7671,608バイトのBourne-Againシェルスクリプト · センサー01 · 別名1カ所(ATK-99DE57)から1回 · アーカイブ22日分になかった新規ハッシュ
sha256
ba9ca1f7995ad2647cab12e384331ceef0047331623371a974b88c4d51cda6271,608バイトのBourne-Againシェルスクリプト · 上と同じURL·同じサイズ·同じ配達別名なのに異なるファイルだ · このURL の累積ハッシュは今日の分まで含めて最低14種
url
hxxp://5[.]182[.]210[.]174/ok上記2ファイルの配布元。8/17 の初観測以降毎回正確に1,608バイトなのにハッシュだけが変わり続ける
sha256
a6296a79f44e21b76604d2d2bbf795d2cf380f70e39d45fbf166707ff3b4a6a4306バイトのPOSIXシェルスクリプト · センサー01 · 別名9カ所から9回 · 8/17 の初観測以降21日目でハッシュ·URL同一
url
hxxp://185[.]93[.]89[.]72/wget上記306バイトのスクリプトの配布元。21日間ファイルが1ビットも変わっていない
sha256
a8460f446be540410004b1a8db4083773fa46f7fe76fa84219c93daa1669f8f2389バイトのOpenSSH RSA公開鍵 · センサー01 · 互いに異なる15カ所から15回 · URLなしでセッション内で直接記録された · 8/16 以降22日連続で同じハッシュ
sha256
43728fbfb98bb39ff61a2db0fc2905bd6937997062b05b9ab8b186fdee18c09a399バイトのOpenSSH秘密鍵 · センサー01 · 別名1カ所(ATK-CA5936)から1回 · URL未記録 · 8/19 以降9回目の観測
sha256
00b6f15c2274420217ed3098a9f5f00545bf1793d7a324fd18a7809cbbf5b12b54バイトのASCIIテキスト · 上記の秘密鍵と同じセッション·同じ日付系列 · 8/19 以降9回目の観測 · URL未記録
sha256
0c99433c7d433d65ab890dcee20b330f262379d532bc76f91e18f09ecfa5fb54202バイトのPOSIXシェルスクリプト · センサー01 · 別名1カ所(ATK-60E535)から1回 · アーカイブには8/21·8/23 にのみあり、14日ぶりの再登場だ
sha256
01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b1バイトの空ファイル · センサー01 · 11回 · 8/17·8/22 のブリーフが扱った「侵入は成功したのに配達は失敗した」系列と同じハッシュだ
sha256
4af5a5c98ad132095c6fbe7b02c242153a190a01cc321e50a916a0ca46fbaa629バイトのASCIIテキスト · センサー01 · 別名1カ所(ATK-BECAD3)から10回 · アーカイブ19個のファイルに記録された常時ハッシュだ
参考
(センサー02 · 該当なし)センサー02 のダウンロードは空の配列であり、保存された検体は0 だ。ADB 47セッションを含め、今日02 で保存されたファイルはない

事実 サイズの感覚を付けておきます。1,608バイトはショートメッセージ10行ほど、389バイトは2〜3行、306バイトは2行、202バイトは1行半です。54バイトは短い一文、9バイトは英語で9文字、1バイトは文字1つ分です。

事実 389バイトのものはSSH公開鍵です。簡単に言えば、パスワードなしで入ってこられる合鍵です。サーバーの authorized_keys(許可された鍵のリスト)というファイルにこの値を1行書き入れると、その鍵を持つ側は以後パスワードを聞かれなくても入ってきます。昨日このファイルは互いに異なる15カ所から来ており、8月16日以降22日連続で同じハッシュです。

事実 逆に399バイトのものは秘密鍵です。ところがこれが植え込んでいったものなのか、サーバーにあったものを持ち出そうとしたものなのか、データが区別してくれません。8月19日に残した未解決の項目が、9回目の観測である昨日もそのままです。

推定 そして昨日新しく出てきた2つのファイルは、同じアドレスから、同じ1,608バイトで、異なるハッシュで出てきました。こうしたことは8月29日にもありました。このアドレスについてだけは、ハッシュで防ぐ方式が一日ももちません。 13回書き留めておいたのに14回目がまた出てくるわけですから。

事実 昨日保存された9種に実行バイナリはありませんでした。 ただしそれが「次の段階がない」という意味ではありません。わたしたちには解凍しなければ現れない配布アドレス12件が別途確保されています。表面だけ見てはアドレスが1行も見えないものです。ただしこの12件は昨日保存された9種とはつながっていません。 背景としてのみ記します。

どんなパスワードで入ろうとしたのか

事実 昨日試行されたID·パスワードの組み合わせは最低931種でした。そのうちここに載せるのは20種だけです。残りの911種は個数だけ数えます。 比率では1対45.6です。

理由は一つです。互いに異なるIP 3カ所未満でしか見られなかった組み合わせは、実際にどこかで流出した本物のアカウントである可能性があります。 そういう値はわたしたちの記事に書き写しません。

以下の20種は反対側です。複数の場所で繰り返され、**「誰のものでもない出荷時の初期値」**と見なせるものです。

ID パスワード 互いに異なる発信元
admin admin 22カ所
345gs5662d34 345gs5662d34 15カ所
support support 8カ所
user user 7カ所
root 3245gs5662d34 7カ所
root admin 6カ所
admin password 6カ所
root 12345 6カ所
root root 5カ所
backup backup 5カ所
username password 4カ所
admin admin1234 4カ所
root qwer1234 4カ所
gns3 gns3 4カ所
root root1234 4カ所
root !QAZ2wsx 4カ所
root abcd@1234 4カ所
pi 123456 4カ所
alex 1234 4カ所
root 1qaz!QAZ 4カ所

事実 admin/admin 一つだけで、互いに異なる22カ所から47回来ました。リスト20行のほとんどがIDとパスワードが同じか、キーボードの上を指がなぞる並びそのままです。

推定 これはわたしたちを狙って作られたリストではありません。どこでも通じる値を順番に入れてみる辞書です。わたしたちのサーバーが開いた理由が「わたしたちだから」ではない、という意味です。

攻撃者が使った手口を国際分類表に対応させると

MITRE ATT&CKは攻撃手口ごとに番号を付けた国際的なリストです。昨日見た行動をその番号に合わせるとこうなります。IDを押すと原文の説明に移動します — わたしたちの言葉を信じず、直接確認していただくためにリンクを張ります。

  • T1595.001Active Scanning: Scanning IP Blocks — 宣伝したことのないサーバー2台に一日最大897カ所が接触、22日のうち最大推定
  • T1046Network Service Discovery — センサー02 の6サービスに483カ所が接触、RDPクッキーにnmap 1回推定
  • T1110.001Brute Force: Password Guessing — ログイン試行1,889回、互いに異なる組み合わせ最低931種(引用20 + 単一出所911)推定
  • T1082System Information Discovery — 偵察(システム)1,374回、全コマンドの50.7%推定
  • T1105Ingress Tool Transfer — ファイルのダウンロード34回、外部URL が記録された配布元2カ所推定
  • T1222.002File and Directory Permissions Modification: Linux and Mac — 実行権限の付与192回推定
  • T1098.004Account Manipulation: SSH Authorized Keys — SSH鍵の植え込み18回、389バイトの公開鍵が互いに異なる15カ所から搬入推定
  • T1070Indicator Removal — 痕跡の削除15回推定

8行すべてに**[推定]**バッジが付いていることを見てください。わたしたちの手元にあるのは、コマンドの「意図分類結果」と「何回だったか」までです。コマンドの原文はありません。分類表に合わせる作業は常に解釈であり、解釈には解釈と書きます。


以前にこういうことがあった

推定 Miraiボットネット(2016). Telnetの初期アカウント辞書でIoT機器に入っていく方式です。公開されたソースコードと米国US-CERTの警報(TA16-288A)に記された方式が、昨日センサー01で見た形と同じ系列です。管理ポートに admin/admin · root/root · support/support のような組み合わせを辞書順に入れてみて、成功するとすぐにスクリプトをダウンロードして実行権限を与えます。昨日「ファイルのダウンロード34回 = ダウンロード後の実行34回」が正確に一致したのも同じ形です。ただし昨日の接触がMirai系列だという根拠はわたしたちにはありません。 ファイルの内容も、検体の分類結果もわたしたちの手元になく、外部判定との連携もしていません。(出典の種類: 公開ソースコード · 政府CERT警報)

推定 RealVNC 4.1.1 認証バイパス、CVE-2006-2369(2006). クライアントが提案した認証方式をサーバーがそのまま受け入れ、認証を飛ばさせてしまう欠陥です。昨日の画面共有ネゴシエーションで相手が提案したバージョンの98.2%が 003.003 でしたが、この古いバージョンが触れる地点が同じです。RFB 3.3は認証方式の選択権がサーバー側にある構造なので、認証の弱い画面共有サーバーを広く探すツールが低いバージョンを先に提案する理由はあります。ただしこれはプロトコルの定義と公開CVEに依拠した背景説明です。 昨日の接触がこの脆弱性を実際に攻撃したという根拠はなく、センサー02は低対話型なので認証段階の次がそもそも存在しません。 さらにこの分布は「相手が提案した値」なので、わたしたちの側が何を先に差し出したかによって変わる可能性もあります。(出典の種類: CVEおよびベンダーアドバイザリ)


それで何をすべきか

チラシの話に戻ります。昨日扉の前を通り過ぎた人の数は最多でしたが、扉が施錠されていたかどうかが実際に分かれ目になった地点です。以下の項目はすべてその話です。

1. 管理ポートをインターネットにそのまま開けている · 可能性 高 宣伝したことのないサーバー2台に一日最大897カ所が到達しました。隣のセンサーだけ見ても、画面共有に264カ所 · リモートデスクトップに111カ所 · データベースに46カ所 · ファイル共有に38カ所 · アカウント照会に8カ所が、事前接触なしにいきなり到達しています。扉が開くほうには414カ所が来ました。自らスキャナーの名前を書いて送ってきた接触もありました。可能性を「高」と書く根拠は隣のセンサーではなく、扉が開くほうです。 昨日の完結セッション5件がすべてログインに成功したからです。VPNやジャンプホストの後ろへ移せば、この接触の大半は認証段階の手前で断ち切られます。

2. 初期アカウント·脆弱なパスワードをそのまま使っている · 可能性 高 上の表20行がすべて、機器やディストリビューションが出荷時に入れておく値です。一日1,889回の試行があり、昨日の完結セッション5つは例外なくこの辞書で扉が開いた後に始まります。 開いた後に続いたのは偵察1,374回 · 実行権限の付与192回 · ダウンロード後の実行34回 · 鍵の植え込み18回です。実際の運用サーバーだったら、あの20行のうち一つでも残っていれば開きます。

3. パスワードログインを許可し、鍵方式を使っていない · 可能性 高 昨日試行された組み合わせの幅が最低931種です。パスワードログインが開いている限り、この辞書は回り続けます。ところが侵入した側は成功するやいなや自分の鍵を掛けておきます。 昨日は鍵の植え込みが18回、389バイトの公開鍵が互いに異なる15カ所から入ってきました。authorized_keys に他人の鍵が1行入ると、パスワードを変えてもその鍵で入り続けられます。 逆に鍵方式だけを許可してパスワードを切れば、1,889回はすべて認証段階で終わります。

4. 外へ出ていく接続を止めていない · 可能性 高 「ファイルのダウンロード」34回と「ダウンロード後の実行」34回が正確に同じでした。 昨日、外部アドレスが記録された配布元は hxxp://185[.]93[.]89[.]72/wget と hxxp://5[.]182[.]210[.]174/ok の2カ所です。ログインはすでに突破された後なので、サーバーが外へ出ていく接続を断つことが、実際の被害を防ぐ最後の地点です。しかも /ok のほうはサイズが同じままハッシュだけが変わり続け、最低14種になりました。ハッシュのブロックリストは、この配布元に対しては一日も有効ではありません。

5. 回数ベースのブロック(fail2ban など)だけを信じている · 可能性 中 ここが昨日の核心です。センサー02の上位9カ所はそれぞれ3,499〜5,379回ずつ叩いたので、どんな閾値にも引っかかります。 ところが扉が開くほうは一カ所あたり平均4.6回です。「5回間違えたらロック」のようなよくある設定は、相当数をそのまま通してしまいます。引用した20個の組み合わせだけ見ても、試行回数が4〜47回なのに観測された場所は4〜22カ所です — 一カ所が何度も叩くのではなく、複数の場所が一度ずつ分けて叩きます。 だから「高」ではなく「中」です。IP単位のロックは太い層は確実に断ち切りますが、薄く広がった層は通してしまいます。結局パスワードログイン自体を切るほうが確実です。

6. ログをサーバーの中だけに置いている · 可能性 中 「痕跡の削除」の意図が昨日15回分類されました。一昨日の8回の1.88倍ですが、8月30日の114回や8月25日の70回に比べれば低い水準です。わたしたちがそれを見られたのは、画面1,536件がサーバーの外で別途録画されていたからです。昨日ログインに成功した5つのセッションのうち、最も長いものが98秒、最も短いものが3.7秒でした。人が画面を見て気づける長さではありません。


私たちが分からないこと

このブログが他と違う点はここです。分からないことを分からないと書きます。

昨日のテーマそのものに対する疑い

  • [確認不可] 画面共有の固有の発信元が100カ所から264カ所へ跳ね上がったのは事実です。実際に発信元が増えた可能性が高いですが、数える基準や重複排除の方式が変わった可能性を排除できません。まさに一昨日(9/5)、わたしたちは別の欄の一つが「累積」ではなく直近の区間だけを数える値だったことを発見しました。このデータの集計基準を疑う理由があります。 ところが数える窓(window)がどこにも書かれておらず、確定できません。
  • [確認不可] センサー02全体の固有の発信元は483カ所ですが、サービス別の発信元をすべて足すと467カ所です。16カ所がどのサービスにも捕捉されていません。 サービス一覧にADBの行がないのでADB専用の発信元である可能性が高いですが、データがそうだと言ってくれるわけではありません。
  • [確認不可] 一つの発信元が複数の扉をまとめてなぞったのかは計算できません。 発信元ごとのサービスの対応がデータになく、サービス別の合計(467)が全体(483)より小さいため、重複を逆算することもできません。この値を0として書けば虚偽になるので「算出不可」としておきます。8月29日にも同じ扱いをしました。

昨日のデータで説明がつかないこと

  • [確認不可] ATK-60E535は昨日の完結性の最高値であり、ログイン成功·コマンド48個·ダウンロード12件なのに意図リストが空です。 わたしたちの分類器がコマンド48個に意味を一つも付けられなかった理由が分かりません。昨日のコマンド2,711個のうち分類されたものが1,667個(61.5%)だけであることと同じ問題かもしれません。
  • [確認不可] ATK-7F4B44とATK-DFBDF7は意図に「ファイルのダウンロード」·「ダウンロード後の実行」があるのに、ダウンロード件数が0です。ダウンロードが失敗したのか保存段階で抜けたのか、データが区別してくれません。
  • [確認不可] ADB接触が47セッションなのに保存された検体は0件です。9月2日(23セッション·検体1) · 9月3日(32セッション·検体4) · 8月28日(87セッション·検体4)にはありました。相手が入れなかったのか、わたしたちが受け取れなかったのか区別する根拠がありません。
  • [確認不可] 画面共有の接触48,605件に対してバージョン記録は48,335件で270件が空き、リモートデスクトップの接触1,474件に対してクッキー記録は1,332件で142件が空きます。 二つの差の理由が説明されていません。
  • [確認不可] ファイル共有の方言提案243件が、セッション200件より多いです。一つのセッションが方言を複数まとめて提案する特性のように見えますが明示されておらず、セッションと提案の関係を断定できません。
  • [確認不可] 399バイトの秘密鍵が植え込まれたものなのか持ち出そうとしたものなのか、データが区別してくれません。ダウンロード一覧にあるのにアドレスの欄は空です。8月19日の未解決項目が9回目の観測である昨日もそのままです。
  • [確認不可] hxxp://5[.]182[.]210[.]174/ok から同じ1,608バイトで互いに異なるハッシュ二つが、同じ日に同じ別名から出ました。何が違ったのかはファイルの内容を収めないため確認できません。 リクエストごとに新しく作られるのか、短い周期で入れ替えているのかも区別できません。8/22 · 8/23 · 8/25 · 8/27 · 8/29 · 9/5の同じ項目がそのままです。
  • [確認不可] このアドレスの累積ハッシュの種類数は下限しか言えません。8/25 10種 + 8/29 2種 + 9/5 1種 + 昨日2種で最低14種であり、アーカイブ22日分をハッシュ単位で全数照合した値ではありません。
  • [確認不可] 昨日の完結セッション5件のうち4件がTelnetですが、Telnetは全体2,207件のうち324件(14.7%)だけです。「多く叩かれる扉と実際に開く扉が違う」という8月16日の観察と方向は同じですが、これは上位5件の標本なのでプロトコル別の成功率を計算することはできません。
  • [確認不可] 画面録画が一方には1,536件、もう一方には230件と記されています。二つの値の関係が明示されていません。
  • [確認不可] 指紋の束の総数は37個なのに、リストには15個しか載っていません。残りの22個がどんな値なのか分かりません。

わざと載せなかったもの · つなげなかったもの

  • [除外] 別の経路で確保されたDiscordウェブフックアドレス1件が、昨日のどのセッション·検体とつながるのかをデータが明かしません。昨日のダウンロードのどの項目にも現れないため、昨日の事件と結び付けて書きませんでした。 ウェブフックトークンはそれ自体が悪用可能な値なので、本文に書き写しません。8月17日以降、複数の記事が同じ理由で除外してきました。
  • [除外] 背景統計として入ってきたCVE 6,622件 · CISA KEV 390件 · ランサムウェア確認98件は、KISAのセキュリティ公示から抜き出した値です。昨日の2台のサーバーの観測とつながったものではないので、記述の根拠としては使いませんでした。
  • [確認不可] 観測した配布元·C2はC-TASへ通報しますが、確認できるのは送信が成功したというところまでです。昨日の通報分が実際に反映されたのかは別途確認が必要です。
  • [確認不可] 解凍しなければ現れない配布アドレス12件は、昨日保存された9種とつながっていません。「昨日の実行バイナリが0個」という事実が「次の段階がない」という意味ではない、という背景としてのみ使いました。

そもそも判断しないこと

  • ASN·ISP — 関連するデータベースがありません。推定しません。 昨日の配布元 185[.]93[.]89[.]72 · 5[.]182[.]210[.]174 のホスティング事業者も確認不可です。
  • 地理情報 — 上と同じです。IPの地理情報は、そもそも帰属の根拠にもなりません。昨日接触した最大897カ所の位置は確認できません。
  • VPN·Tor·クラウドかどうか — 判別する手段がありません。昨日センサー02の上位の発信元がクラウドから来たのかも言えません。
  • 検体が悪性かどうか — VirusTotalと連携していません。昨日の新規2種が悪性かどうかを外部判定で裏付けることができません。
  • 接続プログラムの標識 — 指紋はビルドの指紋であって、人の指紋ではありません。 同じディストリビューションの標準SSHを使う無関係な人も同じ値を持ちます。199カ所の束を一つの主体として読んではいけません。
  • User-Agent — 二つの観測面とも、HTTPではありません。センサー01はSSH·Telnet、センサー02はSMB·RDP·VNC·MSSQL·LDAP·ADBです。
  • CVEとの結び付け — SSH·Telnetへの攻撃はたいていCVEを参照せず、センサー02もネゴシエーション段階なので同様です。上に記したCVE-2006-2369は背景説明であって、昨日の接触との結び付きではありません。
  • コマンドの原文 · ファイルの内容 · 画面のリプレイ — わたしたちの手元にありません。1,536件が録画されたという事実だけを知っており、画面に何があったのかはここでは言えません。
  • 発信元の身元 — 別名(ATK-XXXXXX)は記事と記事の間で同じ発信元を指す標識にすぎず、身元ではありません。 マスキングされた箇所は復元せず、いかなる国·企業·個人も攻撃者として名指ししません。

昨日扉の前に貼られた紙は1.4倍増えたのに、貼っていった場所は2.6倍になりました。一カ所がすることはむしろ半分に薄くなり、471カ所は平均12枚だけ貼って通り過ぎました。

だから昨日の記録は**「より強く殴られた」ではなく「より大勢がかすめた」です。この二つは違う文であり、対応も違います。大勢が一度ずつかすめる形の前では、「何回間違えたらロックする」というルールが発動すらしません。**

そしてその264カ所が扉の前を通り過ぎている間に、隣のサーバーでは3.7秒のセッション一つが鍵を掛けて出ていきました。扉の前を通った人を数える作業では、それを捕まえられません。 数えるのではなく、施錠すべき問題だからです。

観測日は2026-09-06であり、センサー01·02ともに一日集計基準です。発信元IPは後ろ2桁を伏せて記しており、復元しません。配布アドレスは接続されないよう変形(defang)しました。認証情報は互いに異なるIP 3カ所以上で繰り返し観測された20種のみを引用し、3カ所未満でしか見られなかった911種は個数だけ数えて値は記しませんでした。