タグ

PHPに関するAshのブックマーク (27)

  • 画像ファイルに PHP コードを埋め込む攻撃は既知の問題

    (Last Updated On: 2015年9月10日)国内外のメディアで「画像ファイルに攻撃用のPHPコードが含まれていた」と比較的大きく取り上げられています。しかし、この攻撃手法は古くから知られていた方法です。条件は多少厳しくなりますがPerl, Ruby, Pythonでも同様の攻撃は考えられます。PHPの場合は言語仕様的に他の言語に比べ攻撃が容易です。 典型的な攻撃のシナリオは次の通りです。 追記:Tokenizerを使った例に修正しました。 アバダなどの画像ファイルをアップロードできるサイトを探す ローカルファイルインクルードバグを探す 画像ファイルにサイトが利用している言語のコードを埋め込む 攻撃コードを含んだファイルを画像ファイルとしてアップロードする ローカルファイルインクルードバグを利用して攻撃コードを実行する PHPの場合、リモートインクルードバグを攻撃するための攻撃

    画像ファイルに PHP コードを埋め込む攻撃は既知の問題
  • HTMLを許可しつつXSS対策を行えるPHPライブラリ「HTML Purifier」:phpspot開発日誌

    HTML Purifier - Filter your HTML the standards-compliant way! HTML Purifier is a standards-compliant HTML filter library written in PHP. HTMLを許可しつつXSS対策を行えるPHPライブラリ「HTML Purifier」。 HTMLをちゃんとパースして、XSSに関わる問題のあるタグなどは除去して返してくれます。 例えば、次のコードが(Before)、 phpspot <a href="hogehoge" onclick="alert('test1');">hogehoge</a> <script type="text/javascript"> <!-- alert("test2"); --> </script> 次のコードのようにクリーンになります。(A

  • PHPで顔検出 ネットに花を咲かせましょう。 会社作りました。

    このURLのページは表示することが出来ませんでした。 IQサーバー

  • ウノウラボ Unoh Labs: 日本語とPHP

    yamaokaです。 PHPで日語を扱う場合、mbstringモジュールを利用する場合が多いと思います。 日語に特有の機能(カタカナの全角/半角変換など)も備わっていて、とても便利です。 しかし、日以外ではmbstringモジュールはあまり利用されていないようです。 代わりに利用されているのがiconvモジュールで、 最近話題のフレームワーク、symfonyでも 国際化の機能を実現するために内部で利用されています。 iconvモジュールはPHP 5でPHP体に組み込まれました。 別途用意して組み込む必要があるmbstringモジュールと違って、最初から使用できるので便利ですね。 PHPのマニュアルのiconv関数のページを見ると、 いくつかの関数が定義されているのがわかります。 それぞれ、mbstring関数との 対応表を作ってみました。 iconv関数mbstring関数

    Ash
    Ash 2007/03/12
  • 第1回 PHP 開発で Zend Framework を知らないだなんて嘘ですよね?

    第1回 PHP開発でZend Frameworkを知らないだなんて嘘ですよね?:「Zend Framework」で加速するPHP開発(1/2 ページ) Zend Frameworkは、MVCアーキテクチャを構成し、各種コンポーネントを組み合わせることで効率的なPHPアプリケーションを構築できるフレームワークで、PHP用フレームワークの命と呼ばれている。稿では、Zend Frameworkについて、その機能と各種コンポーネントの使い方を解説する。 はじめに 2006年3月にイスラエルのZend Technologiesによって公開された「Zend Framework」はプレビュー版ながらも多くの機能が備わっています。Zend Frameworkは、MVCアーキテクチャを構成し、各種コンポーネントを組み合わせることで効率的なPHPアプリケーションを構築できるフレームワークで、PHP用フレー

    第1回 PHP 開発で Zend Framework を知らないだなんて嘘ですよね?
    Ash
    Ash 2007/03/02
  • PHPプログラミングの基礎を学ぼう(1/2) ? @IT

    連載第1回目では、MySQLPHP+Apacheのインストールと動作確認までを解説しました。今回は、PHPによるWebプログラミングの基と次回以降で作成する「簡易オンラインストア」の概要について説明します。 PHP Webプログラミングの基 PHPコードの埋め込み PHPは、Webアプリケーション構築を前提に開発された言語です。そのため、Webアプリケーション開発で頻繁に使用される処理などを簡単に利用できます。また、HTMLとの相性が良いことでも知られています。 HTMLテキストの中にPHPコードを埋め込むには、<?php ~ ?>を用います(図1)。

    PHPプログラミングの基礎を学ぼう(1/2) ? @IT
  • サービス終了のお知らせ

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

    Ash
    Ash 2007/01/31
  • Ajax/CSS/PHP等のチュートリアルまとめ:phpspot開発日誌

    Tutorials Round-Up: Ajax, CSS, PHP and More | Smashing Magazine Ajax/CSS/PHP等のチュートリアルまとめが公開されてます。 英文のサイトは当にチュートリアルが充実していますね。 Ajax AJAX Desktop Tutorial AJAX Matters Blog Ajax RSS reader AJAX Tutorial Ajax: What is it Good For? → 続きを読む CSS Advanced CSS Layouts: Step by Step Beginner’s guide from a seasoned CSS designer CSS Advanced Guide CSS and HTML examples and tutorials by Ove Klykken CSS Basic

    Ash
    Ash 2007/01/31
  • MySQL+Apache+PHPをインストールしよう(1/3) ― @IT

    PHPMySQL はじめに、PHP(Personal Home Page tool)について簡単に紹介します(注)。ご存じのように、PHPはWebアプリケーションの定番として定着しています。また、Strutsのような大規模開発向けフレームワークがもてはやされる一方で、PHPをはじめPerlRubyPythonといったスクリプト系言語に代表される「Lightweight Language」が手軽さと機能の豊富さから近年再注目されています。特にDBやWebとの相性がいいPHPは、初歩的なWebアプリケーションから格的な用途まで幅広く利用されています。 PHP 4.1まではおおむね順調にリリースされていたのですが、PHP 4.2で「register_globals問題」が大きく取りざたされました(コラム1)。ちなみに、快速MySQLでデータベースアプリ!の第5、6回で紹介しているPHP

    MySQL+Apache+PHPをインストールしよう(1/3) ― @IT
  • PHPと他各種言語の比較記事:phpspot開発日誌

    PHPから他の言語に、または他の言語からPHPに移行する際に便利な他言語とに比較資料をまとめてみました。 PHPRubyの文法面での比較 PHPと他の言語(php.net) PHP Comparison to JS - PHPJavaScriptで計算機プログラム Perlphp比較表 PHP vs ASP.net - PHPASP.net比較記事 スクリプト言語の比較 その他、言語比較の関連記事 mod_perlとmod_phpのパフォーマンス比較の記事 PHPと他言語の比較 : Web 2.0トーナメント 2006年プログラミング言語人気ランキングTOP20 ソースコード変換/埋め込み PHPのソースコードをC++のコードに変換する PHP5のソースをPHP4に変換 ASPのコードをPHPに変換する Perl内にPHPを埋め込む PiP - PythonPHPコードの中に埋め

    Ash
    Ash 2007/01/08
  • PHPとRubyの文法面での比較

    PHPRubyの文法面および主要な機能にのみ注目して(ラフな)比較を行った。そのため、各種関数などにはほとんど触れていない。 式と文 やや便宜的な説明になるがPHPの式および文の特徴を以下に示す。 なんらかの記述を式と呼ぶ 式は値を持つことも持たないこともある 関数は必ず返り値を持つが、echoなど一見関数に見えるものの中には値を返さないものもある 文は式を;で終えたもの Rubyの式および文の特徴を以下に示す。 なんらかの記述を式と呼ぶ 厳密にいうと式は値を持つことも持たないこともあるが、Rubyではほとんどすべての記述が値を持つと考えてよい ifやfor、メソッド定義も値を返す 文は式からなり終端を明示するために;を付けてもよい 通常はつけない 複数の文字を一行に書くときには必要 ブロック 「ブロック」といったときPHPRubyで意味するところはかなり違う。 まずPHPでいうブロッ

  • PHPでの入力値チェックのすり抜け - T.Teradaの日記

    Webアプリケーションでは、外部からの変数に対して、形式チェック(Validation)を行ないます。PHPでこれを行なう場合に、ありがちなミスをいくつか挙げてみました。 この日記は、がるさんの日記に触発されて書いたもので、いくつかの例を引用しています。 がるの健忘録(2006/11/08) - 素晴らしき自動的な世界〜或いは「型のない」世界〜 型の問題 数値と文字列の比較 <?php $input = "2'; DELETE FROM hoge; --"; if ($input == 2) { // ↑TRUEと評価される がるさんの日記で紹介されていた例に、手を加えたものです。 if文中の式がTRUEになるのは、PHPの「==」演算子が、数値型と文字列型変数を比較する際に、文字列を(かなり強引なやり方で)数値型に変換するからです。変数の比較は、同じ型同士で行なうのが無難だと思います。

    PHPでの入力値チェックのすり抜け - T.Teradaの日記
  • cl.pocari.org - Smarty を使った開発でデバッグを行う 4 つの方法

    Smarty を使った開発でデバッグを行う 4 つの方法 2006-11-29-1: [PHP][Books] PHP のテンプレートエンジン Smarty を使って開発するときに,割り当てた変数が複雑になって困ることはありませんか? その際,何らかの方法を使って割り当てた変数を確認するのですが,いくつか方法があります. 1. 常にデバッギングコンソールを表示する方法 おそらく一番有名な方法ですが,$debugging に true を指定して,常にデバッギングコンソールを表示する方法です. require_once 'Smarty.class.php'; $smarty = new Smarty; $smarty->debugging = true; これで,常にデバッギングコンソールが表示されます. デバッギングコンソールは,window.open() を使った JavaScript

  • 12のPHP最適化テクニック:phpspot開発日誌

    12 PHP optimization tips Ilia Alshanetsky’s PHP performance talk given last week at the Zend conference is pretty useful as far as getting small tips for tweaking PHP code. PHP最適化テクニックが紹介されていましたので以下にまとめてみました。 staticメソッドが使えるなら使おう。速度は4倍になる __get, __set, __autoload は使わない require_once は重い include, requireで読み込むファイルはフルパスにしよう スクリプト開始時のUNIXタイムを $_SERVER['REQUEST_TIME'] で取れる strncasecmp関数やstrpbrk関数を使えるケースは

    Ash
    Ash 2006/11/25
  • ウノウラボ Unoh Labs: PHPのちょっとしたコツ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: PHPのちょっとしたコツ
    Ash
    Ash 2006/11/02
  • Zend Framework: Manual - プログラマ向けリファレンスガイド(日本語)

    表目次 2.1. サンプル CMS 用のアクセス制御 3.1. 設定オプション 3.2. サーバのオプション 3.3. デバッグメッセージ 3.4. Active Directory 用のオプション 3.5. OpenLDAP 用のオプション 4.1. Core フロントエンドのオプション 4.2. Function フロントエンドのオプション 4.3. Class フロントエンドのオプション 4.4. File フロントエンドのオプション 4.5. Page フロントエンドのオプション 4.6. File バックエンドのオプション 4.7. Sqlite バックエンドのオプション 4.8. Memcached バックエンドのオプション 4.9. Xcache バックエンドのオプション 6.1. Zend_Config_Ini コンストラクタのパラメータ 9.1. 通貨記号の設定を指定する

    Ash
    Ash 2006/04/19
  • PHP5 で利用できる新しい関数 - Sooey

    Read About this site, Works or Download software. Tumblelogging at Tumblr. Amazon associate store. Search content. PHP5 で利用できる新しい関数 PHP5 で利用できる新しい関数 PHP4 や PHP3 の時代から PHP での開発をしているとそれまでに蓄えた知識 だけで大抵のことはできるようになっているので、ドキュメントの隅々まで目 を通すことが少なくなります。 ところが、久々にドキュメントを眺めていたら、これまでは既存の関数を組み合わせて実 現していた処理が関数一発でできるようになっているケースが多くありました ので、自分用のメモも兼ねていくつかまとめておこうと思います。 array_combine() 配列Aの値を配列要素のキー、配列Bの値を配列要素の値として新しい

    Ash
    Ash 2006/03/10
  • Ywcafe.net

    Ywcafe.net This Page Is Under Construction - Coming Soon! Why am I seeing this 'Under Construction' page? Related Searches: Credit Card Application All Inclusive Vacation Packages Top Smart Phones Best Mortgage Rates Top 10 Luxury Cars Trademark Free Notice Review our Privacy Policy Service Agreement Legal Notice Privacy Policy|Do Not Sell or Share My Personal Information

    Ash
    Ash 2006/03/03
  • yohgaki&#39;s blog - addslashesによるエスケープ処理は止めましょう

    (Last Updated On: 2018年8月13日)追記:PHPエスケープ関連の検索でこのエントリを参照されたと思います。PHPでのエスケープ全般については以下のエントリを参照してください。 PHP文字列のエスケープ セキュリティmemoにaddslashesよるエスケープ処理でSQLインジェクションが可能なるという記事を見つけました。 私のセミナーを聞いたことがある方は「addslashesによるエスケープ処理は止めましょう」と言っていた事を覚えているでしょうか? mysql_real_escape_string()やpg_escape_string()等のデータベース専用のエスケープ関数を使いましょう、とも話しています。 ちなみにSQLiteを使っている場合はaddslashesでエスケープ処理はNGです。もっと根的に間違っています。SQLiteではMS SQL Server,

    yohgaki&#39;s blog - addslashesによるエスケープ処理は止めましょう
  • 初心者用PHP入門

    独習PHP 第3版 手を動かしながら学ぶPHP7。基構文から、クラス、DB連携、セキュリティ対策まで。解説、例題、練習問題の3ステップでよくわかる。基礎からオブジェクト指向まで学べる定番入門書。 PHP逆引きレシピ 第2版 (PROGRAMMER’S RECiPE) 第2版では、最新のPHP(5.4/5.5)に対応したほか、レシピ全体の大幅な見直しを行い、データベースやテスト関連のレシピ拡充など、さらに内容充実・より便利になりました。サンプルプログラムのスマートフォン対応も行っています。実践で即役立つテクニックと開発ノウハウ、つまづきやすい・ハマりやすいポイントを徹底解説した「PHPユーザー必携の1冊」です。 PHPの絵 第2版 Webアプリ作りが楽しくなる新しい9つの扉 HPは、さまざまなWebアプリケーションが簡単に作れそうなので、興味のある人は多いのではないでしょうか。書は、イ

    Ash
    Ash 2006/01/31