トップページ⇒php
1001コメント228KB

1chスクリプト解析$改造スレッド

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/12/06 12:00ID:PeP1d1VQ
http://1ch.tv/ggg3fff4/cgi/bbs.cgi

元祖あめぞう型スクリプトが公表されたようです。
2chの元となった作者さんのスクリプトを解析し、
さらに改良をかさねて、さらによいものを作るためのスレッドです。
0611 ◆NjeTOMik 01/12/07 03:19ID:???
>>609
いんや。SCRIPT_NAMEか何かから動的に取得すればそれで済むと思われ。
init.cgi(拡張子CGIなだけで共通のプロパティ記述したファイル)でも
作ってそこに書いといてそれをrequireするが良いと思います。
0612 ◆NjeTOMik 01/12/07 03:20ID:???
>>610
アプ先の人はもう寝てるのかな。
0613名無しさん@お腹いっぱい。01/12/07 03:27ID:???
>>611
> init.cgi(拡張子CGIなだけで共通のプロパティ記述したファイル)でも
> 作ってそこに書いといてそれをrequireするが良いと思います。
609はこれのことを書いたつもりだったんだけどね。
説明不足だったかな、スマソ
0614download01/12/07 03:35ID:KG02HElg
だれか 完全な補完できたひと ください・・
0615名無しさん@お腹いっぱい。01/12/07 03:48ID:???
1ch.tv関係者唯一の技術屋さんらしき人。

>11 名前:かわぐちさん 1年9月24日9時43分  引用書き込み 43 時間経過

>今回、私はめずらしくソースに手を加えていません。
>些末な部分はチェックしていますが、大筋は、あめぞうさんとinfohandsさんの
>バージョンをそのまま使用するつもりです。
>ただし、今後の過負荷試験で状況が頻繁に再現されるようでしたら、
>その時には、ファイルロックの手法及びデーター記録の手法を変えたいと
>考えています。

>1:もちろん、スクリプトに手を加えないのは、私ではとうていフォローできないから、
>という意味もあります。 かわぐち 24日9時46分15
0616名無しさん@お腹いっぱい。01/12/07 03:49ID:???
なお、ヲチ板では新たな事実が次々と。
暇があったら覗いてみてください。
0617 ◆NjeTOMik 01/12/07 04:15ID:???
ヲチ板の祭り見てた(参加してた)。明日会社かよ〜
>>613
いやこっちこそ。しかしとりあえず明日かな。
0618なにな01/12/07 06:35ID:SYzqURy/
http://www5c.biglobe.ne.jp/~kaname/
0619名無しさん@お腹いっぱい。01/12/07 06:43ID:???
ハンバーグ野郎のURLだからクリックしないように
0620名無しさん@お腹いっぱい。01/12/07 06:43ID:???
ヲチ板民うざい。
0621 01/12/07 06:46ID:???
ハンバーグって何?
0622名無しさん@お腹いっぱい。01/12/07 07:56ID:???
>>621
1ch社長にハンバーグで買収されたスタッフになった野郎
0623名無しさん@お腹いっぱい。01/12/07 10:05ID:???
g-zip通るようにしとけよ
0624名無しさん@お腹いっぱい。01/12/07 10:06ID:???
祭り終了?
0625名無しさん@お腹いっぱい。01/12/07 10:31ID:???
>>623
それはスクリプト側でなくて、鯖運営側の作業だろ?
0626名無しさん@お腹いっぱい。01/12/07 10:51ID:???
>>624
午前中から暇してる人間は少ないと思われ…
そう言う自分はこれから仕事…
0627名無しさん@お腹いっぱい。01/12/07 11:09ID:???
>>355
◆HOkHOkkI 氏が超速攻で太字攻撃を仕掛けるものと思われ
>>392
1ch.tvスクリプトのセキュ穴笑えないよあんた
>>603-605
穴を塞がないで設置だけ簡単にするの超最悪
0628名無しさん@お腹いっぱい。01/12/07 12:30ID:???
WebProg板は、すげえ乾いている事を実感したよ。
0629名無しさん@お腹いっぱい。01/12/07 12:54ID:???
いちいち馬鹿に付き合ってられるか
0630603=60501/12/07 13:43ID:???
>>627
設置を簡単にする
↓
動作確認する人が増える
↓
穴発見
↓
穴を塞ぐ
↓
ウマー
0631名無しさん@お腹いっぱい。01/12/07 13:51ID:???
あれ?もう終了なのか(;´Д`)
楽しみにしてたのに
0632 ◆NjeTOMik 01/12/07 13:55ID:???
やっと会議終わったよ。
>>631
いや、みんな運動不足のところ猛ダッシュしたんで脇腹が痛くなってるんだろ。
こちらもじわじわとやってます。
0633名無しさん@お腹いっぱい。01/12/07 14:03ID:???
何の力にもなれないけど
皆さん応援してます。
頑張ってください。
〜ヲチ板住人より〜
0634名無しさん@お腹いっぱい。01/12/07 14:18ID:KSdCacMl
昼組って少ないな まぁ当たり前だけど

CGIの穴なのかいっしょに置いといて放置してた17が見つかったのか
考える時間がないけどとりあえずApacheに書き換えとく
あとは帰ってからだろーなぁ

http://cxlabi.s1.xrea.com/omaaaa/
0635 ◆NjeTOMik 01/12/07 14:31ID:???
>>634
お、お疲れ。これはこれで1ch.tvを忠実に模してて良い(w
0636名無しさん@お腹いっぱい。01/12/07 18:12ID:???
ヲチ板住民です。
夜に期待してます〜。↓にリクエスト上がってるみたいなので、参考にしてもらえると。
http://isweb39.infoseek.co.jp/computer/watchken/cgi-bin/2chbbs/test/read.cgi?bbs=farewell1ch&key=007634438
0637名無しさん@お腹いっぱい。01/12/07 18:13ID:???
>634
自分で消してないなら外から消されてるっつのに(ワラ
こんなもん書いて喜んでるあめぞうも、infoなんたらも相当にダメダメ
悪いが厨房2編の方がその辺はマトモな様だ
昨日公開されたのにそのまま直さずに使ってた1ch管理サイドは
犬猫の半分位しか脳みそが無いんだな、悲惨な奴らだ
0638名無しさん@お腹いっぱい。01/12/07 18:39ID:???
>>637
禿同、良く知らないけどinfohandsってアングラとかの人じゃ無いの?
それでこれじゃあねえ・・・・
Adminにしても、多分西が学生を引っ掛けて来たんだと思うけど
方針うんぬんは置いといて、技術的にどうしようも無いね。本位買ってやれ→西
びすのMLとかには時間に任せて何でもハックしまくってるであろう学生びすオタが
ゴロゴロ居るのに、何で態々こんなレベルの人間を・・・・
0639名無しさん@お腹いっぱい。01/12/07 18:47ID:???
>>637
コーディングや設計の質は、にへん君と
同じぐらいのレベルだろーと思うよ。
ただ、彼のはjapuさんチェック通ってるから(藁

>>638
びすのMLって何?
暇な学生がいるならバイト雇いに行きたい。
0640名無しさん@お腹いっぱい。01/12/07 18:53ID:???
>>637-638
ちょっと違う。もともとのスクリプトはあめぞうが作った。
でもオープン直前になっても、まともなものにならなかったので、
infohands氏が作り直した。でオープン後運用意見のすれ違いで1chから離脱。

某秘密掲示板から転載します(オリジナルはもうなくなってます)。
---------------------------------------
1 infohands 2001/10/04(Thu) 13:18

もう本当に、勝手なお願いです。無視されることを前提に書きます。
(中略)
このスクリプトと書きかえる手間がそんなに変わらないのならば、
こっちをダメもと
(言い方が悪いですが、現時点採用版でもログは飛ぶかもしれないんですよね?)
で採用してみてはどうでしょうか?

ログ1000件で自動移行機能はちょっと、はずしてしまいましたが、
>>3-4
機能や、最新50件などかなり機能強化しました。
リンクミスなどはないと思います。かなり、チェックしました…(あるかも…)

自分がスクリプトいじっていて何ですけど、
現状で公開予定の掲示板は、一言レスが無限に書ける機能がそのままなど
ぜったい、最悪の状況になると思います。
そして、顔文字機能がそのままだと、リソースを食ったままでまともに掲示板が開けません。
この2点は絶対にやばいです。やばすぎます。

(中略)

かわぐちさん、あめぞうさんのチェックが入っていないし、こんなことダメだと思います。
ならば、プロトタイプとして、あめ2kのサーバにある掲示板を
1ちゃんねるはこういう風なものも考えています程度に公開することだけでも
許して欲しいです。
(もちろん、ログは全部隠して、ディレクトリごと公開用のを新規に作りますので
いままでの書きこみは見られません。)
0641640の続き01/12/07 18:56ID:???
2 infohands 2001/10/04(Thu) 13:20

現状の
node07の掲示板だけ公開というのはもう、本当に…危険です。

ということで、正式採用はむりなので、暫定一般公開だけさせてもらえませんか?

こんな感じです。。。詳しくは
ヲチ板 うまいデマ、無いでしょうか?1ch.tv Part27
http://kaba.2ch.net/test/read.cgi/net/1007666135/

のほうを見ていただけると。
0642名無しさん@お腹いっぱい。01/12/07 18:58ID:???
誰か、どっかで、要求仕様まとめてくんない?
おれ、月〜水が休みだからコーディングできると思うんだけど。
0643名無しさん@お腹いっぱい。01/12/07 19:00ID:???
>>642
http://isweb39.infoseek.co.jp/computer/watchken/
064464201/12/07 19:02ID:???
お、さんきゅ。
現状搭載されてる仕様も一覧にしてもらえると、もっと嬉。
0645名無しさん@お腹いっぱい。01/12/07 19:09ID:???
★つきのキャップ
トリップ
ID
スレ1に削除権付与
カウンター
レス数の表示
×機能
(段階表示で◎○△▲×)
優しさ表示機能
(投稿数に対する削除率を記録して月単位とかで発表する。
削除率が低い板=優しい板ってことで皆で優しさを競い合う。)
裏ニュース!みたいなAA制限機能

----------------------------------------------------
実現可能なのかどうかは別としてこれくらい要求がでてます。
0646名無しさん@お腹いっぱい。01/12/07 19:29ID:SekZ//+Q
5ch.tvがUS$1,000.00ってことは、1ch.tvもその値段だったのか。
金の無駄遣いのような気がする…
064763701/12/07 19:33ID:???
>>638 全く、困ったもんだね(笑
>>640
なる、仕様が拡散していってどうしようも無くなったんだね。
あめぞうが何となく思い込み仕様でコーディングし初めたが
そこに変更だの、追加だのが重なってこうなったって感じかな
それにしても実装しながら基本的な仕様を決めたような痕跡が沢山あるね
0648名無しさん@お腹いっぱい。01/12/07 20:30ID:+D2h8dyu
>>646
西さんはいろんな機関を通してしまったので、
200万円くらいかけたそうです。
064939@タカヒロ ◆aRKxRILQ 01/12/07 20:43ID:???
改造とかしてアップしたら西タンに訴えられそうで怖い…
0650名無しさん@お腹いっぱい。01/12/07 20:44ID:???
>>649
いや、西タンは1chに飽きたらしいからOKでしょ。
0651名無しさん@お腹いっぱい。01/12/07 20:50ID:???
というかアプロードしたら普通に著作権侵害になるような。
0652名無しさん@お腹いっぱい。01/12/07 20:52ID:???
ま、でもみんなあめぞうの書いた奴を流用する気なんか
さらさらないでしょ?一から書いたほうが洗練されるような。
0653名無しさん@お腹いっぱい。01/12/07 20:53ID:???
むしろこっちの改造したスクリプトを1chにパクられそうで怖い
0654名無しさん@お腹いっぱい。01/12/07 20:56ID:???
つーかその恐れ大みたいだなネトオチ見る限り
0655名無しさん@お腹いっぱい。01/12/07 21:04ID:???
おれは、もれたスクリプトを"読まない"。

1chが使うなら、それはそれでいいじゃん。別に。
反省すべき点は反省すべきってことで(藁
0656名無しさん@お腹いっぱい。01/12/07 21:05ID:???
フルスクラッチモノならばGPLにしちゃおうよ。
0657名無しさん@お腹いっぱい。01/12/07 21:07ID:???
BSDスタイルで良いんちゃう?
0658名無しさん@お腹いっぱい。01/12/07 21:13ID:H0rhqRyw
>>657
1chに使われた場合、ソース公開を要求できるよ、GPLならば。
065933=400 ◆wfMSpsRY 01/12/07 21:18ID:???
日帰り出張から直帰しました。

>>652
ゴメン。オイラが一から作ってるヤツ全然洗練されてないかも。
期待しないで待っていてください。

んで質問。
bbs.ini のどれが何を差してるのか良くわかりません。
text=1000
timh=
timm=
max="
view=7
maxbytel=10
autoname=2000
のあたり。
あの汚いソース(人のこと言えんけど)から何なのか探すのは骨が折れます。
互換性無くすと全部作り直すまで動作しなくなっちゃうので・・・。
# 取り合えず bbs.cgi と read.cgi だけ直して動作確認しておきたい。
066010401/12/07 21:40ID:???
5ch.infoを取得されたかたがいるようです。
http://isweb39.infoseek.co.jp/computer/watchken/cgi-bin/2chbbs/test/read.cgi?bbs=farewell1ch&key=007723805
066165801/12/07 21:51ID:???
あそうだ。今思いついたのだけど、改造部分をGPLにして汚染してしまうってのもアリかも。

もしも仮に1chに盗用されたとして、黙って見てるってのは悔しいからねえ。
それに祭りのネタ・種をあらかじめ埋め込んでおく、という意味あいもあったりして(w
066239@タカヒロ ◆aRKxRILQ 01/12/07 21:55ID:???
トリップ実装
「めはらみか」実装
base_url.txtだかなんだかをいらないように

参考までに
http://www.miyagino.com/1ch/test/
0663名無しさん@お腹いっぱい。01/12/07 22:05ID:???
ぉ、ついにタカヒロ氏降臨だ
17氏は来てないのかな、、、
0664名無しさん@お腹いっぱい。01/12/07 22:13ID:???
この場合特殊な解釈をいれなくても問題だと思うので
本当に訴えられてもしりませんよ。

あとセキュリティーに手をつけなくて設置してるのは
また自分のサーバを犠牲にすることになるような。
0665名無しさん@お腹いっぱい。01/12/07 22:17ID:???
>>663

>>70で登場して、>>367とかの発言があるも
>>448でソースのへぼさに呆れて帰る。
0666名無しさん@お腹いっぱい。01/12/07 22:17ID:???
>>664
1から全部書き直せば問題は無いと思われ
0667名無しさん@お腹いっぱい。01/12/07 22:18ID:???
今タカヒロ氏の掲示板にいってきました。
う〜ん、書き込むときにエラーが出るっつーのはなおんないもんなんすかね。
あと、時間表示が「1年〜月〜日」ってなってるのはもともとですか?
0668名無しさん@お腹いっぱい。01/12/07 22:20ID:???
>>665
さんきゅ。
あれは17氏だったのか〜、キャップなんて覚えてなかったから分からなかった(汗
0669名無しさん@お腹いっぱい。01/12/07 22:21ID:???
>>665
それは17じゃないか?
0670名無しさん@お腹いっぱい。01/12/07 22:21ID:???
>>666
いや、いま設置してるのは手付かずって自分で書いてるし。
067166901/12/07 22:22ID:???
669は忘れてくれ。すまん
067239@タカヒロ ◆aRKxRILQ 01/12/07 22:22ID:???
>>664
怖くなってきたらすぐ消します(泣)
一通り見たんですけど、サーバーやっつけるようなセキュリティーホールはないような…
とはいっても全部見たわけではないのでなんともですが…
というか、全部見れません(泣)
067339@タカヒロ ◆aRKxRILQ 01/12/07 22:37ID:???
$value =~ s/@>@/>/g;
$value =~ s/@<@/</g;

何の意味があるのだろう…(泣)
0674名無しさん@お腹いっぱい。01/12/07 22:59ID:???
ソースを一から書いて
見た目を変えれば問題無いな
完璧な別物だからな(w
0675名無しさん@お腹いっぱい。01/12/07 23:05ID:???
>>674
しかし1.5chであるためには確信犯的パクリを維持しつつ、と(藁
0676名無しさん@お腹いっぱい。01/12/07 23:06ID:???
>>675
そう、目指すものはそれだ(w
0677名無しさん@お腹いっぱい。01/12/07 23:07ID:???
定期貼り
http://isweb39.infoseek.co.jp/computer/watchken/

意見集約中
0678名無しさん@お腹いっぱい。 01/12/07 23:21ID:???
>672
早速消された?
悪い事は言わんから辞めとけ、このスレ見てる中に一人や二人はdeleteマシーンが
居ると思うぞ
rootからゴッソリ消されても良いなら止めないが・・・・
0679名無しさん@お腹いっぱい。01/12/07 23:23ID:???
ハクられたのか・・・( ゚д゚)ポカーン
0680名無しさん@お腹いっぱい。01/12/07 23:31ID:???
偽春菜みたい。
0681名無しさん@お腹いっぱい。01/12/07 23:43ID:???
ここにもにせ1chが・・・・

239 名前:たんたたん 投稿日:01/12/07 23:35 ID:ww0zuOT6
いまGenとこみたら
http://isweb37.infoseek.co.jp/computer/inouegen/cgi-bin/gench/tv/index.html
なのが(ワラ
068233=400 ◆wfMSpsRY 01/12/07 23:44ID:???
>>672
まあroot権限取るようなのはないけど、CGIの動作ユーザの権限で出来る
事は何でも出来るね。
そのユーザ保有のファイル全消しとか。
0683名無しさん@お腹いっぱい。01/12/07 23:53ID:???
root: DirectoryTreeの根っこ 「/」 ルート
068439@タカヒロ ◆aRKxRILQ 01/12/08 00:01ID:???
1chスクリプト危険ですね〜
ファイルとばれれました(笑)

セキュリティーちゃんとしないかぎりつかわんほうがいいですね。
0685名無しさん@お腹いっぱい。01/12/08 00:09ID:???
>>684
やっぱり(笑
本運用のサーバでディレクトリ切ってやってるのかなと思ったから
危ないなあと思ってさ。
12chはjpドメインに引っ越してたんだね、(^^;
# しかし、あめぞうって人はrequireとかuseってキーワードを知らなかったんだろうか・・・・
0686名無しさん@お腹いっぱい。01/12/08 00:31ID:???
タカヒロさーん、動作する状態の奴下さいー!
0687 ◆RKzSzRhE 01/12/08 00:35ID:???
正直、これ読むだけでもしんどいよなぁ
ヲチ板住人はあんまり急かさないでくれるとありがたい

で、一から設計しなおすならしなおすで基本設計からここで議論していくのが
いいと思われ。変数名とか一覧で示してくれればサブルーチン毎に手分けして
効率よく作業できるんでないの?
0688 ◆NjeTOMik 01/12/08 00:54ID:???
>>685
つうかinfoが改変したと思われるとこ以外、myも出現しないんですが。
あとorとandも登場してないなあ。
0689名無しさん@お腹いっぱい。01/12/08 01:06ID:???
取り合えず全部から見渡したい変数、関数(decodeだのerrorだのbaseだの)は
モジュールにしてuseする。
次に幾つかのファイルから参照したい関数を別ファイルに用意して本体側からaction等で
リクエストを分けた後に、随時eval{require〜〜}する
このactionだけど、一つのファイルに色んな機能を詰め込んで多機能化
せずに、別ファイルに分けてコード自体はウォーターフローに流した方が可読性が高まる(事が多い)
基本的に同じような事を何度も、そこらじゅうに書くのは最悪だと思う。
スタックの積み崩しで実行効率が落ちるならそこをインラインにすれば良い。

という訳で、逝っちゃんはそもそもHTMLのパラメータ辺りからグチャグチャなんで駄目です (死)
0690名無しさん@お腹いっぱい。01/12/08 01:09ID:???
それと再三書かれてますが、ユーザの入力に対する汚染チェックが皆無です(鬱)
リクエストをパースしたら速攻でふるいに掛ける様にしないと
0691 ◆NjeTOMik 01/12/08 02:20ID:???
>>689-690
大筋同意。requireをevalするのってどういう意味持つっけ?
0692 01/12/08 02:33ID:???
evalしないとFatalに落ちる、useも出来にない事も無いがちょっとBIGINブロックに細工が必要
0693 01/12/08 02:34ID:???
↑ ロード出来なかった時ね
0694 ◆NjeTOMik 01/12/08 02:56ID:???
>>693
なる。Perlは例外なんとかしてほしいなやっぱ。ってスレ違い。
0695名無しさん@お腹いっぱい。01/12/08 03:00ID:???
# しかし、やっぱ、あれだね。ヲチ板の人たちは
# さすが、メジャー板って感じの熱さだね。
0696名無しさん@お腹いっぱい。01/12/08 03:07ID:acWneIOp
あちら営業さん。こちら技術開発部(w
0697 ◆NjeTOMik 01/12/08 03:08ID:???
>>696
現在二足のワラジ(w 技術営業か?
0698名無しさん@お腹いっぱい。 01/12/08 03:09ID:???
ヲチ板では何をしてるんだろ? (^^;
たまに行くけど流れが早いからついて行けないんだよなぁ・・・・
て言うか1ch落ちてるよね、今修理中なのかな
0699 ◆NjeTOMik 01/12/08 03:12ID:???
>>698
現在1ch.tv復活待ちでメタヲチ中。すなわち
「こういう状態で放置してるということはいかなる意図なのか?」
等々。あと派生ネタ(明日の西タンの授業についてとか)。
0700名無しさん@お腹いっぱい。01/12/08 03:19ID:???
>699
ありがとう、今見てみたけどやっぱ凄い勢いで付いて行けない(^-^;
何だか管理のポリシーが問題みたいだけど、肝心のスクリプトがこれじゃ
信用も何も無いよねえ・・・・
せめて構造化して、もうちょっと機能追加、変更に対して強度出さないと
何かある度にあのスパゲッチを弄るのは拷問にひとしひ・・・・
0701 ◆NjeTOMik 01/12/08 03:28ID:???
>>700
修正しても、3日後には再解析が必要になりそうだよな(w
0702名無しさん@お腹いっぱい。01/12/08 03:45ID:???
みんな、cvsとか使わないの?
0703 ◆NjeTOMik 01/12/08 03:58ID:???
>>702
普段は一人でやってるからなあ。
0704デフォルトの名無しさん01/12/08 06:11ID:???
>689
息抜きにざっと読んでみた。
取り合えずどのファイル見ても嫌がらせみたいに出てくるのが
「フォーム解析」「time関連」「設定ファイル読み込み」「グローバル変数の設定」
辺り、この辺はさっさとモジュールに追い込む
あとアクセスログ関係もかなりクドイ(そもそも何でこんなにログ取るのか
自鯖なんだからhttpdで取れよw)ので、この辺もやっつければかなりすっきりするね。
ざっと見たけどこんな感じ、グローバル変数がちょっとずつ書き換わる様は
見てて壮観だな w
infohands氏?の「ここらへんから本体部分?」 とか言う謎のコメントに
悲壮感が漂っていた
0705デフォルトの名無しさん01/12/08 06:16ID:???
あ、俺は全然触って無いので期待しないでくれ(口だけクンです)
CSVは良いんだけど、多分設計(大げさな意味じゃなくて)から
ざっと考えないと、同じようになると思うな。
ディレクトリ構成とかデータの形式がざっと決めれば、後は
ここに機能の叩き台と良い失敗例が有るから話は早いと思う
0706デフォルトの名無しさん01/12/08 06:19ID:???
間違えた ->CVSね
後、管理パスとかメンテは最悪別ディレクトリ切らないとまずいよなあ
0707名無しさん@お腹いっぱい。 01/12/08 06:57ID:???
既に失敗扱いなんだね (^-^;;
0708 ◆NjeTOMik 01/12/08 07:14ID:???
>>704
やたらと「?」とか「たぶん」とかのコメントが多いよな(w

>グローバル変数がちょっとずつ書き換わる様は見てて壮観だな w
つかアレ追ってくと気が狂いそうになるんですが。
0709名無しさん@お腹いっぱい。01/12/08 09:51ID:xDL5dvmp
現在どのような状況になってますか?
1.5chやらCGIの解析、改造状況はいかがなものかと?
0710 ◆RKzSzRhE 01/12/08 09:56ID:???
プロジェクトリーダーが求められている。
1chは反面教師にしなくちゃな。
■ このスレッドは過去ログ倉庫に格納されています