Sep - 27th

AirPress

Posted at 8:23 pm | Filed Under WordPress

AdobeのAIRを使ったWordPress管理クライアント、AirPress

まだ日本語は使えない。

Read More>

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を発行しているところをコメントアウトした。

Read More>

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

うちの環境では特に緊急性もなさそうだが、とりあえず全ての環境を更新。

Read More>

Aug - 6th

WordPress更新

Posted at 12:29 am | Filed Under Security, WordPress

WordPress2.2.2が出ている。セキュリティ関連の更新もあるのでホスティングしている全ての環境をアップグレードしておいた。

Read More>

Jun - 21st

WordPress 2.2.1

Posted at 10:41 pm | Filed Under PHP, WordPress

WordPress 2.2.1が出た。例のPHPMailerのセキュリティ問題も修正されている。他にもXML_RPC絡みの問題が直っているので、サーバの全環境にパッチを当てた。

Read More>

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;
}

アドホックな処理なので、本来は入力値をチェックする必要があるのですが、プラグインを含めるとどこで使われているのか不明なので、とりあえずこれで対策しました。

Read More>

May - 16th

Wordpress2.2

Posted at 5:53 pm | Filed Under WordPress

このサーバ上にある3つのWordpressを全部2.2に更新した。

XML-RPCは動いているみたいだ。

Read More>

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での動作も問題なし。なんでだ!?

Read More>

Mar - 9th

日々雑感

Posted at 1:33 am | Filed Under PostgreSQL, Subversion, WordPress

更新が滞っていたが、その間にも近所の新しい分譲住宅地で地主が首を吊ったとか、WordPressのサーバがクラックされて配布中のファイルが書き換えられていたりとか、まあいろいろとあった。あと、誕生日も過ぎた。

今は社内文書、特にPDFの仕様書なんかを溜め込んで全文検索できるようにする作業が進行している。いろいろ試したが、フロントエンドを作りやすいのでSenna + Ludiaで実装している。MySQL自体にパッチを当てるのはいかがなものかと思うので、パッチなしでPostgreSQLと連動するLudiaにした。

Subversionはなんだかんだいいながら影舞と連動して動くようになり、仕事の開発関連の作業は順調。かみさんの日記サイトはいつまでも放置されたままなので閉鎖した。何度作ってもいつもろくに使われないまま消えてしまう。まあ、そんなものなのだろう。

親指がもげてもなんとかなる。それが人生だ。

Read More>

Mar - 2nd

見かけの変更

Posted at 9:48 pm | Filed Under WordPress

FireFoxでは文字が小さくて読みにくかったのでスタイルシートを変更した。line-heightは基本的に200%とする。

こういうとき、FireBugは重宝する。コンソールでカーソルが当たっている箇所がハイライト表示されたりするので、CSSの編集のときには非常に便利。

もっとも、このサイトは人間のアクセス数よりボットの襲来の方が多い不思議なサイトなのであまり意味がない。

#追記:ネットカフェでIEから見たらぜんぜん見かけが違うので驚いた。サイドバーがちゃんと表示されていない。

Read More>

« go backkeep looking »