タグ

cakephpに関するnihenのブックマーク (10)

  • CakePHP の PHP コード実行の脆弱性を使って CakePHP を焦がす - co3k.org

    2010/11/13 に出たらしい http://bakery.cakephp.org/articles/markstory/2010/11/13/cakephp_1_3_6_and_1_2_9_released を読んでびっくりしたんですが、 Twitter を軽く検索した限りだと CakePHP ユーザでない僕が気づいているのに (日の) CakePHP ユーザさんたちがどうも気づいていないっぽいのでわかりやすくまとめてみることにしました! CakePHP には任意の PHP コードが実行できる致命的な脆弱性があります! 影響のあるサイト結構ありそうですが悪用厳禁です! ※通常リリースの告知のなかにこんな致命的な脆弱性に関する情報を思いっきりわかりにくく書いちゃうのはひどいなあと思うので、ユーザの方は CakePHP に文句を言うといいと思います。僕は CakePHP ユーザじゃない

  • CakePHPを使ったMVC設計のベストプラクティス - Sooey

    CakePHPを使ったMVC設計のベストプラクティス 個人的にはCakePHPはあまり好きではないのですが、CakePHP開発メンバーによるMVCデザインの記事 (CakePHP のおいしいべ方)で紹介されていたBest Practices in MVC Design with CakePHP (php|architect’s C7Y)はMVCフレームワーク利用者にとってとても有用な情報だったので、訳してみました(php|architectの方には翻訳許可を頂いています)。 この記事を読んでドメインモデルに興味を持った方は、エンタープライズ アプリケーションアーキテクチャパターン(PoEAA)やDomain-Driven Design: Tackling Complexity in the Heart of Softwareに手を出してみるのもいいかも。他に、InfoQにユーザー登録すれ

    nihen
    nihen 2009/11/18
    良記事
  • CakePHPでプラグインのURLがキモくならないようにするプラグイン - 暗澹

    タイトルが日語として破綻してる感がありますが気にせず進みます。CakePHP はマニュアルどおりにプラグインを使うと URL がキモくなることで有名で、キモくならないためにはちょっとした工夫が必要になったりします。まとまっている資料などもあり、おおいに参考になりました。自分も恒常的に存在がキモいと言われて悩んでいる人種なので、こういう話にはちょっと首を突っ込みたくなります。どうするかできればプラグインなので簡単に付けたり外せたりするようにしたい。 例えば USB 機器を差すときに、その都度設定ファイルを変更しろとか言われたら困るあと外すときにその設定ファイルを直すのとかめんどくさい。絶対忘れるなので routes.php にルールを書いたり、core を修正したりするのは無しの方向で。プラグインを置くだけで使えるようにする。あと、中身が多少キモくても気にしないようにする。 イケメンや美人

    nihen
    nihen 2009/10/21
    素晴らしい
  • getclientIP()について

    CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日発のCakePHP応援ブログとして、最新情報をお届けします。 今回、1.2のstableがリリースされましたが、getclientIP()についてnateとgwooが扱ってくれました。 https://trac.cakephp.org/ticket/5842 https://trac.cakephp.org/changeset/7957 考慮してくれて感謝です。 「そろそろCakePHPについて一言言っておくか」という、「へぼへぼCTO日記」さんの記事の中に「で、見に行ってみたらCakePHPのエライ人がこんな回答をしてくれてた」とありますが、CakePHPの中に、それほどえらい人は実はいないと思います。 ・Cakeを最初に作った人はとうの昔にプロジェクトを去っている ・

    getclientIP()について
    nihen
    nihen 2008/12/28
    うはー。
  • The Gift of 1.2 final (Articles) | The Bakery, Everything CakePHP

    History does not happen, it is made. Warning: this message is long and full of goodies. Today, the history of the CakePHP grows stronger. December 25, 2008 will be remembered as one of the most important points in this history. After exactly 2 yrs from the first development release, we can happily say we have the most stable and powerful web framework available. Please enjoy our big present to you

    nihen
    nihen 2008/12/28
    1.2でた
  • ウェブのアプリケーションにIPアドレスが伝わる経路は知っておくべきじゃないかな - デー

    CakePHPのgetClientIPを使っていいのは小学生までだよねー | へぼい日記と、そろそろCakePHPについて一言言っておくか | へぼい日記をみて、この仕様は仕方がないだろうなー、と思った。 理由としては、参照先でも示されているけどリバースプロキシがいたりとか。僕が去年してた仕事だとSSLアクセラレーターが挟まっていたので、アプリケーションサーバーから見た接続元がアクセラレーターのIPアドレスになってて、ログをとるためにアクセラレーターにアクセスしたIPアドレスをHTTPヘッダーに入れて送ってくださいよーみたいな話をして、myGetClientIPAddress()みたいなものを作った。そういう事例があることを考えると、IPアドレスを保存しようとか、もっと重要な認証(の条件)に使おうということになったら、IPアドレスがどういう経路で伝わってくるのかを開発者は把握しとくべきだし

    ウェブのアプリケーションにIPアドレスが伝わる経路は知っておくべきじゃないかな - デー
    nihen
    nihen 2008/12/08
    ドキュメントに書いてあるならいんですが、ソース嫁って話であれば結局信頼性のないアプリってことだよね。みんなTCP/IPスタックとかRSA暗号のコード読んでるの?
  • へぼへぼCTO日記 - そろそろCakePHPについて一言言っておくか

    前回のエントリを見てくれた人がCakePHPのtracにこれ脆弱性じゃね?ってチケットを立ててくれたよ!で、見に行ってみたらCakePHPのエライ人がこんな回答をしてくれてたよ! #5842(getClientIP() possiblly return false IP address) this is not a security exploit in Cake, but should certainly be something to be aware of when building an application. 超意訳: CakePHPの脆弱性ではありません。「仕様です」。だからアプリケーション構築するさいはちゃんと知っとくべきことだよね! オーケー、分かった。確かにこれはCakePHPの脆弱性ではなかった。CakePHPを使っていた僕らの脆弱性だったんだ。オーケー、前言は撤回す

  • へぼへぼCTO日記 - CakePHPのgetClientIPを使っていいのは小学生までだよねー

    PHPで開発をすることが多くなりPerlの良さを再確認している今日この頃ですが皆さんいかがお過ごしでしょうか。 さて、今日は今もっともナウいPHPのWebアプリケーションフレームワークであるCakePHPのお話を一つ。 CakePHPには組み込みコンポーネントとしてリクエストハンドラ(RequestHandler)が備わっています。 リクエストハンドリング :: 組み込みのコンポーネント :: マニュアル :: 1.2 Collection :: The Cookbook: このRequestHandlerのメソッドであるgetClientIPが小学生には危険そうだというお話。(あ、このエントリのタイトル逆w) まずはgetClientIPの実装コードを。(1.2を例にとっているが1.1もほぼ一緒である) https://trac.cakephp.org/browser/trunk/c

  • CakePHP 携帯用ビューを表示する

    サイトにPC用と携帯用がある場合、PC用とは別に携帯用の表示を行う方法です。この方法なら同じコントローラ・アクションで、レイアウトとビューファイルを変更することができます。なお携帯版のURLは[/m/]で始まるようにします。 1.URLルーティングを設定する。 [app/config/routes.php]で[/m/]からURLが始まる場合にwebservicesとして扱うように設定します。 [app/config/routes.php] <?php (snip) $Route->connect('/m/:controller/:action/*', array('webservices' => 'Mobile')); ?> 2.WEBSERVICESを有効にする。 webservicesがフレームワーク内でサポートされるように設定を変更します。 [app/config/core.php:

  • CakePHP - Build fast, grow solid | PHPフレームワーク

    New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x

    CakePHP - Build fast, grow solid | PHPフレームワーク
  • 1