Sep - 27th
AirPress
Posted at 8:23 pm | Filed Under WordPress
AdobeのAIRを使ったWordPress管理クライアント、AirPress。
まだ日本語は使えない。
Sep - 25th
WordPress2.3
Posted at 10:28 pm | Filed Under WordPress
文字化けしたので驚いたが、どうやらMySQLにSET NAMESクエリを投げているようなので、wp-includes/wp-db.phpの80行目、
if ( !empty($this->charset) && version_compare(mysql_get_server_info(), '4.1.0', '>=') )
// $this->query("SET NAMES '$this->charset'"); // <=ココ
$this->select($dbname);
}
SET NAMESを発行しているところをコメントアウトした。
Sep - 8th
WordPress2.2.3
Posted at 9:26 pm | Filed Under WordPress
WordPress2.2.3が出ている。修正箇所はこちら。
変更されたファイルはどうやら以下の通り:
/wp-admin/admin-ajax.php
/wp-admin/admin-functions.php
/wp-admin/install-rtl.css
/wp-admin/options.php
/wp-admin/rtl.css
/wp-includes/default-filters.php
/wp-includes/feed-rss2-comments.php
/wp-includes/formatting.php
/wp-includes/pluggable.php
/wp-includes/plugin.php
/wp-includes/query.php
/wp-includes/rewrite.php
/wp-includes/rss.php
/wp-includes/vars.php
/wp-includes/version.php
/wp-includes/widgets.php
/wp-mail.php
/xmlrpc.php
うちの環境では特に緊急性もなさそうだが、とりあえず全ての環境を更新。
Aug - 6th
WordPress更新
Posted at 12:29 am | Filed Under Security, WordPress
WordPress2.2.2が出ている。セキュリティ関連の更新もあるのでホスティングしている全ての環境をアップグレードしておいた。
Jun - 21st
WordPress 2.2.1
Posted at 10:41 pm | Filed Under PHP, WordPress
WordPress 2.2.1が出た。例のPHPMailerのセキュリティ問題も修正されている。他にもXML_RPC絡みの問題が直っているので、サーバの全環境にパッチを当てた。
Jun - 12th
PHPMailerの脆弱性
Posted at 12:07 pm | Filed Under PHP, Security, WordPress
PHPMailerにリモートから任意のコードを実行出来る脆弱性が見つかっています。popen関数に渡される引数が適切に処理されていないので、入力値に問題があってもそのままコマンドがforkされて実行されてしまいます。WordPressにもwp-includes/class-phpmailer.phpとして組み込まれているので対策が必要です。
とりあえずpopenの前にescapeshellcmdでエスケープ処理を入れて、sendmailコマンドを分割して攻撃するような手口を回避することは出来ます。
//wp-includes/class-phpmailer.phpの396行目に一行追加します:
$sednmail = escapeshellcmd($sendmail); //追加
if(!@$mail = popen($sendmail, "w"))
{
$this->SetError($this->Lang("execute") . $this->Sendmail);
return false;
}
アドホックな処理なので、本来は入力値をチェックする必要があるのですが、プラグインを含めるとどこで使われているのか不明なので、とりあえずこれで対策しました。
May - 16th
Wordpress2.2
Posted at 5:53 pm | Filed Under WordPress
このサーバ上にある3つのWordpressを全部2.2に更新した。
XML-RPCは動いているみたいだ。
May - 7th
XML-RPCのエラー修正
Posted at 12:38 pm | Filed Under PHP, Tuit, WordPress
オフラインエディタでこの日記を編集しようとしたら、WordPress側のXML-RPCサーバからの応答が
「XML-RPC server accepts POST requests only.」
になっているので調べてみたが、どうやらGLOBAL変数が正しく受け取れないようになっているのが原因らしい。wp-includes/class-IXR.phpに上のエラーメッセージが書かれていたので見てみると、こんなコードになっていた。
if (!$data) {
global $HTTP_RAW_POST_DATA;
if (!$HTTP_RAW_POST_DATA) {
die('XML-RPC server accepts POST requests only.');
}
$data = $HTTP_RAW_POST_DATA;
}
理由はわからないが、ここでdieしないように
$HTTP_RAW_POST_DATA = file_get_contents(”php://input”);
これを追記して
if (!$data) {
global $HTTP_RAW_POST_DATA;
if (!$HTTP_RAW_POST_DATA) {
$HTTP_RAW_POST_DATA = file_get_contents("php://input");
if(!$HTTP_RAW_POST_DATA){
die('XML-RPC server accepts POST requests only.');
}
}
$data = $HTTP_RAW_POST_DATA;
}
ちょっとしつこくしてみたら動いた。ectoでの動作も問題なし。なんでだ!?
Mar - 9th
日々雑感
Posted at 1:33 am | Filed Under PostgreSQL, Subversion, WordPress
更新が滞っていたが、その間にも近所の新しい分譲住宅地で地主が首を吊ったとか、WordPressのサーバがクラックされて配布中のファイルが書き換えられていたりとか、まあいろいろとあった。あと、誕生日も過ぎた。
今は社内文書、特にPDFの仕様書なんかを溜め込んで全文検索できるようにする作業が進行している。いろいろ試したが、フロントエンドを作りやすいのでSenna + Ludiaで実装している。MySQL自体にパッチを当てるのはいかがなものかと思うので、パッチなしでPostgreSQLと連動するLudiaにした。
Subversionはなんだかんだいいながら影舞と連動して動くようになり、仕事の開発関連の作業は順調。かみさんの日記サイトはいつまでも放置されたままなので閉鎖した。何度作ってもいつもろくに使われないまま消えてしまう。まあ、そんなものなのだろう。
親指がもげてもなんとかなる。それが人生だ。
Mar - 2nd
見かけの変更
Posted at 9:48 pm | Filed Under WordPress
FireFoxでは文字が小さくて読みにくかったのでスタイルシートを変更した。line-heightは基本的に200%とする。
こういうとき、FireBugは重宝する。コンソールでカーソルが当たっている箇所がハイライト表示されたりするので、CSSの編集のときには非常に便利。
もっとも、このサイトは人間のアクセス数よりボットの襲来の方が多い不思議なサイトなのであまり意味がない。
#追記:ネットカフェでIEから見たらぜんぜん見かけが違うので驚いた。サイドバーがちゃんと表示されていない。
« go back — keep looking »