どさにっき

by やまや
1月中旬

2017年1月12日(木)

新春恒例 BIND 祭

_ 脆弱性まとめて4件とか、今年も BIND は絶好調だなぁ。 201320142016と、1月の脆弱性はこの5年で4回目。ある意味いつもどおり。

_ BIND の脆弱性が公開されるタイミングの研究は かなり進んでて、ぶっちゃけ今回も数日前から確実視されてた(今回は、ではなく今回も)。具体的な内容は不明なものの、出るのは間違いなく、それが明日になるかあさってになるか、という程度。だいたい日本時間の夜中から明け方ぐらいの時間帯に公表されるので、朝イチで確認しにいって、今朝になってああやっぱり出たね、って感じで以後淡々といつもの流れをこなす感じ。もうバレバレなんだから、いっそ事前に予告しておいて、その数日後に詳細公開という流れにした方がいいんじゃないですかねぇ。openssl なんかは実際にそういうフローで脆弱性公開してるし。その方が更新作業のスケジュールを確保できるしありがたい人多いでしょう。

_ つーか、 BIND 卒業しましょう


2017年1月4日(水)

賀正

_ あけましておめでとうございます。

_ 正月休みはほんとは東北で雪遊びでもしようかと思ってたんだけど、 年末の回線断とその後のサーバ構築のせいで実質的な休みが短くなっちゃったので、取りやめて京都に行ってきた。そういえば最近ごぶさたしてたけど、下調べとかなくても観光ガイドとかなくてもどこに行けば何があるのかだいたい把握できてるので急な予定変更でも問題なし。

_ まだデジカメから写真吸い出してないけど、いつもどおり、知恩院のアクロバチックな除夜の鐘を見物して、八坂神社で年越しの瞬間を迎え、清水寺方面にぶらぶら散歩するという感じ。今年は帰路で新年早々障害アラートが鳴って、だけど対応できずにほかの人にお任せして、というよけいなオマケまでついてきたが。

_ まあ、そんな感じで今年もなんかてきとーにやりすごそうと思います。ゆるゆる見守ってください。

うるう秒

_ で、今年は元旦にうるう秒挿入のイベントがあったわけだけど、年が明けた後も3時過ぎまで外をほっつき歩いてたので、実際に挿入された9時は当然まだ寝てた。障害とかなくてよかったね。

_ ところで djbware がどの程度使われてるかときどき観測してるわけですが、うるう秒挿入というイベントもいい観測機会だったりする。つまり、djb 製の時刻調整ツール clockspeedはうるう秒挿入タイミングを人間がメンテする必要があるので、まだ使ってる人がいればこれに関する言及が増えるはず。

_ ということで、 twitter 検索の結果。2017年元旦のうるう秒挿入に際して言及してる人はゼロ。よし、もう誰も使ってないな。

_ ってゆーか、

% w3m -dump_head http://cr.yp.to/libtai/leapsecs.dat
HTTP/1.0 200 OK
Server: publicfile
Date: Wed, 04 Jan 2017 02:58:33 GMT
Last-Modified: Sat, 20 Jun 2015 05:37:44 GMT
Content-Type: text/plain
Content-Length: 208
djb 自身が公開してるうるう秒データも最終更新が2015年6月、つまり前回のうるう秒挿入の直前で、今回の対応はされていない模様。だいぶ前に public domain にしたとはいえ、このファイルはその後もメンテを続けてたようなんだけど、今回それもなくなった。もしかして、djb 本人ももう使うのやめた?

_ もし万が一いまだに clockspeed を使っててこのへんいじってなければ、うるう秒が挿入されずに時計が1秒ズレてるはずなので、とっとと対応してくださいまし。前述のとおり djb が最新の leapsecs.dat を公開してないので、自力で作る必要あり。


2016年12月28日(水)

復活

_ えーと、うちのサーバ、しばらく落ちてました。

_ クリスマスに抗議の意を示したのか、イブの日の午前中に自宅フレッツ回線が死亡。今どき自宅サーバを外に公開してる人なんてめったにいないと思うんだけど、うちはそのめったにいない人でして、インターネットから消えました。

_ つながらないのがわかってても対応できない日が続いて、やっと今朝、NTT の人に来てもらって復旧。原因は ONU の故障。10年以上使ってたからねぇ、経年劣化で壊れるのもしかたない。ちなみに交換された ONU もけっこう年季の入った中古品。同型品と交換なのね。新品なんかないだろうなぁやっぱり。作業に来た人も、このタイプもう少ないんだよねー、とのこと。

_ ヘタすると復旧が年を越すかもしれん、ということでホスティング屋さんにサーバ借りたんだけど、そっちの準備ができる前に自宅回線の方が先に復活してしまった。まあせっかくの機会なんで、外部公開しているものはそっちの方に移す予定。明日から正月休みで例年どおりまた遠出するつもりだったんだけど、中途半端なままで放置するのはいろいろよくないので、ある程度の作りこみが完了するまで外出は延期の予定。

_ なお、不通だった4日間にこちらに送られたメールは、ほとんど再送されてうちに届いてるはず。たいていの MTA はデフォルトではキューの保持期間が5日〜7日なので(身近に1日に設定してる ISP があるけど)。

PHPMailer の穴

_ 騒ぎになってますね。年末なのにみなさんたいへんですね。仕事納めできなくなっちゃった人もいるんじゃないかなぁ。わしゃまったく無関係なので他人事だけど。

_ この穴、PHPMailer というよりも PHP 本体の mail() 関数の仕様がクソというのが問題の本質のようで、 実は2年も前に mail() を使った攻撃手法が公開されてる。そして先月になって実際にこの攻撃手法が RoundCube で有効だったと判明し、1ヶ月後に PHPMailer でも可能だったよと発表されるという流れ。

_ PHPMailer の脆弱性公表はいちおうクリスマス休暇明けではあるけど、あんまりマジメに人は働いてない時期で、ヤバい脆弱性を公開するのに適したタイミングとは言えない。にもかかわらず公開したのは、RoundCube の前例を知っていれば PHPMailer でも同様の攻撃が通用することを発見するのは容易で、実質的にすでに公開されてるも同然の状態だったからなんじゃないかな。実際、今回の発見者が PoC を公開するより先に 別の人が PoC を出してるのは、察しのいい人ならすぐ作れるレベルのものだったからと思われる。

_ そういうわけで、PHPMailer だけでなく、RoundCube もアップデートしてください、それ以外でも PHP でメールを送信してるものがあれば各自チェックしておく必要あり。PHPMailer に関して言えば、sendmail コマンドではなく SMTP を使った送信もできるはずなんで、そっちを使うように設定を変更しておいてもよいかと。

_ 公開されてる PoC は sendmail の -X というオプションがキモで、これは postfix、qmail、exim その他の MTA についてくる sendmail wrapper では機能しない。が、発見者は

Note that exploitation is not limited to systems with Sendmail MTA.
とも 言ってる。いろいろ考えてみたけどどうやれば sendmail 以外の MTA で発動できるのかまったく思いつかなかったけど、とりあえず注意はしておいた方がいいかも。少なくとも -X が使えないのは確実なので、他の MTA も攻撃可能だったとしても、実際の攻撃コードは大きく異なるはず。


1月中旬
やまや