【F-board】PHP-J閉鎖【スパム】 (57レス)
1-

16: 2006/05/15(月)07:11 ID:??? AAS
>>15
その線が強いな。
普通、スパムが沸いたくらいであんなにスッパリ閉鎖せんよ。
17: 2006/05/17(水)15:00 ID:??? AAS
廃れてるな。
あんまり使ってる人おらんのかな?
18
(1): 2006/05/23(火)11:25 ID:??? AAS
phpBBのほうがまだマシだよ
19
(1): 2006/05/23(火)13:02 ID:??? AAS
>>18
phpBBはサーバーごと乗っ取られるぞ
20: 2006/05/25(木)01:48 ID:??? AAS
>>19
ずいぶん前のバージョンの話だよ。
21: 2006/06/03(土)15:35 ID:JBlVFVz+(1) AAS
>>6
閉鎖したってことは、もうF-boardの面倒みないのかな?
残されたユーザーで、ほそぼそとメンテナンス&再配布をやってみますか?
22: 2006/06/03(土)22:23 ID:??? AAS
再配布すんなよ。
23: 2006/06/04(日)02:27 ID:gUzo7/y/(1/9) AAS
http://pantora.net/pages/php/f-board/

F-boardという人気の掲示板を攻撃するワームが一部で流行っています。
片手間で管理しているFedora JP 掲示板も攻撃されました。
SQLを直接実行しメッセージを削除しても、スレッド更新日時は元に戻りません。
配布元のPHP-J.comは閉鎖してしまいました。

そこで更新日付を元に戻すPHPスクリプト「fix_moddate.php」を作成しました。
少々時間のかかるスクリプトなのでターミナルから実行してください。
ダウンロード:fix_moddate.tar.gz
24
(1): 2006/06/04(日)02:34 ID:gUzo7/y/(2/9) AAS
http://zapanet.info/blog/item/747/catid/17

いろいろと改善方法を取ることができましたが、今回取ったのはとても簡単な方法で、「投稿前のチェックボックスを一つ追加」しただけです。
チェックボックスにチェックが入っていないとエラーになって投稿できないようにしました。
この掲示板はPHPとMySQLで作られているタイプなので改造も比較的簡単でした。
25
(1): 2006/06/04(日)04:12 ID:??? AAS
セキュリティーホールがあったの?スパムに狙われてるだけ?
26: 2006/06/04(日)11:25 ID:??? AAS
>>25
セキュリティーホールはないよ
27: 2006/06/04(日)11:33 ID:gUzo7/y/(3/9) AAS
メッセージを投稿する部分を改造する場合、
/post.php
/lib/widget/default/WidgetPost.php
をいじればいいみたいですね。

WidgetPost.phpのコード(WidgetPostクラス)を見ると、HTMLが埋め込まれているので、トレースするのがちょっと面倒くさいです。
デザインテンプレートシステムを導入して、デザインとロジックを分離した方がメンテナンスしやすいですね。

http://www.itmedia.co.jp/enterprise/0402/19/epn01.html
28: 2006/06/04(日)12:06 ID:gUzo7/y/(4/9) AAS
>>24
●投稿時の入力項目として、チェックボックスを一つ追加する方法を検討

(1) チェックボックス(□にレ印を入れるやつ)の表示を追加する
/lib/widget/default/WidgetPost.php
の175行目付近(パスワード入力欄の表示位置の直下)に、

$htmlString .= '
<tr>
<td class=row1><b>投稿確認</b></td>
<td class=row2><input type="checkbox" name="confirm">投稿時にチェック(レ印)を入れてください。</td>
</tr>';
省3
29: 2006/06/04(日)12:07 ID:gUzo7/y/(5/9) AAS
(2)スレッドに新規投稿時の確認処理追加
投稿ボタンをクリックすると、
<form action="post.php" method="POST" name=message>
<input type="HIDDEN" name="act" value="submitThread">
という動作になっている。

/post.php
の112行目付近に、

$confirm = PreVar::getVar('confirm','POST');

というコードを追加する。
=(1)で追加した「confirm」の値のチェック処理を追加
省5
30: 2006/06/04(日)12:08 ID:gUzo7/y/(6/9) AAS
(3)スレッドに返信時の確認処理追加
投稿ボタンをクリックすると、
<form action="post.php" method="POST" name=message>
<input type="HIDDEN" name="act" value="submitReply">
という動作になっている。

/post.php
の198行目付近に、

$confirm = PreVar::getVar('confirm','POST');

というコードを追加する。
=(1)で追加した「confirm」の値のチェック処理を追加
省5
31
(3): 2006/06/04(日)12:11 ID:gUzo7/y/(7/9) AAS
以上の3点の修正で、投稿時にチェックボックスの入力項目(レ印)が1個追加できます。

チェック方式を変更する場合、
/lib/class_FormValidator.php
のFormValidatorクラスに、新たなメソッドを追加すればOKだと思います。

上記(1)〜(3)のチェックは、FormValidatorクラスのisEmptyメソッド(空値のチェック)をそのまま利用しています。

http://zapanet.info/blog/item/747/catid/17
・投稿前にランダムに文字列画像を生成して、その文字列を投稿者に入力してもらう

これをやるなら、PEARライブラリのCAPTCHAとかを利用できそうですね。
http://www.doyouphp.jp/sample/sample_others_captcha.shtml
CAPTCHA α版のセキュリティは、まだ十分ではないようですが。
省2
32
(2): 2006/06/04(日)12:16 ID:??? AAS
>>31
ワンタイムチケット持たせりゃ良いんじゃない?
2ch見たくクッキー喰わせるだけでも・・・

利用者は何も変わらないし
33: 31 2006/06/04(日)13:04 ID:gUzo7/y/(8/9) AAS
>>32
kwsk!!

【補足】
/lib/widget/default/WidgetPost.php
の165行目付近
if($this->_var['allowPass'] == true || $messInfo != ''){

}
みたいなかんじの条件分岐を入れて、チェックボックスの表示/非表示を切り替える処理があった方がよかったみたいですね。

=メッセージの編集/削除の処理では、チェックボックスの値確認処理(上記の(2)や(3)のような処理)を入れてないので、チェックボックスが表示されても意味なし。
省1
34
(1): 2006/06/04(日)13:15 ID:??? AAS
>>32
スパマーがクッキー食ってたら意味無いような??

>>31
逆襲さん、おつかれ
35
(1): 2006/06/04(日)13:17 ID:gUzo7/y/(9/9) AAS
>>ワンタイムチケット

CSRF対策 PHP
http://techtech.jp/jdl/weblog/blog/1383/1051

サテ技本のCSRF対策に疑問
http://p0t.jp/mt/archives/2005/12/csrf_1.html

↑こういう処理を追加すればいいのかな?
1-
あと 22 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.457s*