PEAK XOOPS - News in englishin japanese

Archive | RSS |
  
Poster : GIJOE on 2005-12-08 13:07:09 (11100 reads)

in englishin japanese
私自身、最近知ったのですが、以下の様なファイル名がサーバ上にあった場合、PHPファイルとして実行されます。

foo.php.en
foo.php.orig.test

これはApacheのmod_mime.cの「正しい仕様」なのですが、この仕様を知らなかったが故にできてしまっているファイルアップロード脆弱性もあり得ます。

もし、アップロードされてDocumentRoot下に置かれるファイル名が、自動連番などでなく、元のファイル名を活かした形のものとなった場合、ファイル名最後の.phpだけを禁止しても、意味がなくなります。

XOOPSにそういうモジュールがあるかどうか私は知りませんが、念のため、最新版のProtector (2.54) では、ドット(.)が2つ以上あるファイルをアップロードしようとした場合は、強制終了する仕様にしました。

もし、ファイルアップロードで、真っ白画面になってしまった場合、Protectorの管理画面を見てください。理由が書いてあるはずです。

Read more... | 1340 bytes more |0 comments

Poster : GIJOE on 2005-12-04 16:18:00 (9656 reads)

There is a possibility that I've broken some language files in my modules when eliminating CR on Nov.

These two languages are not broken.

- english
- japanese


But some characters like umlaut possible broken such conversion.
And I can't judge whether such language files are broken or not.

If you find broken language files, tell me please.


Poster : GIJOE on 2005-12-02 01:00:00 (13478 reads)


1:    $result = mysql_query( "SELECT ''" , $conn ) ;
2:    $obj = mysql_fetch_object( $result ) ;


in englishin japanese
PHP 5.0.5からの非互換性。

このコードは、PHP 5.0.4以下であれば何の問題もないが、PHP 5.0.5になった途端、fatal errorで止まってしまう。

SQLを動的に生成する条件によって、カラムデータではなく単に空文字を渡したい場合などには、以下のように、カラム名をつけることで、このfatal error は回避できる。

もともと問題あるコードとは言え、PHP 5.0.5から突然fatal errorになるので、ハマリポイントとだろうと思い、ここにメモしておく。



1:    $result = mysql_query( "SELECT '' AS tmp_name" , $conn ) ;
2:    $obj = mysql_fetch_object( $result ) ;

0 comments

Poster : GIJOE on 2005-12-01 12:27:28 (8978 reads)

in englishin japanese

今頃気付いたのですが、本家版XOOPS 2.2.xでは、cofigテーブルの仕様がちょっとだけ変わっています。

従来は、system関連のconfigは、conf_modid=0として保存されていましたが、本家版2.2.xでは、conf_modid=1となっています。

systemモジュールがmid=1であることなどを考えれば、本家版2.2.xの方が妥当だろうとは思えます。

問題は、それによってfatal errorが出る場合があることです。(具体的には、Protectorの管理画面など)

というわけで、configハンドラを取得する際には、conf_modid については、以下のようなCriteriaを利用すれば、本家版XOOPS 2.2.xでも、他のXOOPSでも動くコードになるでしょう。


$criteria = new CriteriaCompo(new Criteria('conf_modid', 0));
$criteria = new CriteriaCompo(new Criteria('conf_modid', 2, '<'));


0 comments

Poster : GIJOE on 2005-11-16 05:03:00 (9811 reads)

in englishin japanese

TITLE:
Xoops "xoopsConfig[language]" Local File Inclusion Vulnerability

SECUNIA ADVISORY ID:
SA17573

VERIFY ADVISORY:
http://secunia.com/advisories/17573/

CRITICAL:
Moderately critical

IMPACT:
Exposure of sensitive information

WHERE:
>From remote

SOFTWARE:
Xoops 2.x
http://secunia.com/product/327/

DESCRIPTION:
rgod has discovered a vulnerability in Xoops, which can be exploited
by malicious people to disclose sensitive information.



Secuniaに出たレポートですが、register_globals が on の場合のみのレポートなので、ほぼ問題ありません。register_globals は必ず off です。
register_globals on でなければ動かないモジュールは利用するべきではありません。

それと、XOOPS 2.x となっていますが、これは明らかな間違いです。

JP版であれば、コアのclass内にWYSIWYGエディタを配置するようなことはしていませんし、本家版でも 2.0.x であれば、関係のない話です。

0 comments

« 1 ... 38 39 40 (41) 42 43 44 ... 55 »
Login
Username or e-mail:

Password:

Remember Me

Lost Password?

Register now!