頭おかしすぎワロタ

詳細は例の先生のサイトで。

WordPress 4.7.1 の権限昇格脆弱性について検証した | 徳丸浩の日記
http://blog.tokumaru.org/2017/02/wordpress-4.7.1-Privilege-Escalation.html

なにこれ……

存在しないコンテンツが指定された場合、update_item_permissions_checkメソッドの様々なチェックをすべてくぐり抜け、メソッド最後のreturn文にて true が返されるところが恐ろしいですね。 しかし、この「存在しないコンテンツ」については、以下の update_item メソッドの 526行目にてエラーが返され、結果としては何もしない *はず* でした。

そもそもなんだけど、単なるblogシステム(昨今では中規模なCMSとしても使われてるけど)なんだからデフォでそんなどうでも良い機能は切っとけよっていう。

しかし読めば読むほど、自身も反省、いや慎重に書かなければなと思うことがある。それはキャストだ。静的型付でのコーディングが長い奴はJavascriptだとかphpだとかrubyだとかpythonだとかの動的型付言語でコーディングするときに不必要にキャストしてしまいやすい。はい、私もです。今回のWPの件は、キャストがどうこう以前の問題だとは思うが、不用意なキャストの前後でふるまいのチェックが疎かになる可能性が高そうだなと思ったのでわざわざ書いた。

楽だからWP選んだし(主にデザインとTwitter連携)、仕事やバイトでカスタマイズとか色々あるから面白いかなあと思ったけど、やっぱり趣味じゃないなーこれ。アホみたいにクエリ投げるし設計が20世紀だよ。近日中に捨てよう。