tdiary/tdiary-core — pull request #466 by machu (2014-12-30 15:45:24+00:00)
Title: [WIP] DoS-resistant

#402 で指摘されたDos攻撃への対応です。TDiary::Application#callにて例外が発生した場合に、ステータスコード500を返します。

> あと、Dispatcherなどの層で例外が起きるとプロセスが落ちてしまうのはそういうものでしょうか。CGIの頃はそれでよかったと思うのですが、unicornなどでの運用だと潜在的なDoS攻撃リスクという意味でちょっと不安かなと思いました。具体的に他にまずいケースというのは思い付いてはないのですが。

もう一つの問題（不正な文字列への対応）もこのPRで合わせて対応します。

> 例外が起きているのはDispatcherでRackCGI.newしているところなので、RackCGI.newにブロックを渡してエンコーディング変換をする形が自然かなと思います。