タグ

PHPに関するdeep_oneのブックマーク (67)

  • ハイパーボックス、PHP構築パッケージ「Zend Server日本語版」を月額提供

    deep_one
    deep_one 2012/07/02
    Zend Serverってことは、難読化済みの奴とかも動くのかなぁ…
  • PHPの脆弱性を突くコードが相次ぎ出現、SANSが注意喚起

    セキュリティ機関のSANS Internet Storm Centerは、最新版のPHPに存在する未解決の脆弱性を突いたコンセプト実証コード(PoC)出現が確認されたとして注意を呼び掛けている。 PoCコードの出現はSANSが5月19日付で伝えた。脆弱性はPHP 5.4.3の「com_print_typeinfo」機能に存在し、Windows版が影響を受ける。PHP 5.4.3は5月8日にリリースされたばかりで、com_print_typeinfoの問題を解決するためのパッチは現時点でまだ公開されていない。 PHPをめぐっては、5.3.12/5.4.2までのバージョンに存在していた脆弱性を突くコードも出回っていた。SANSは5月28日のブログで、読者のWebサーバのアクセスログから見つかったという問題のコードを紹介し、改めて注意を呼び掛けている。こちらの脆弱性はPHP 5.4.3で解決さ

    PHPの脆弱性を突くコードが相次ぎ出現、SANSが注意喚起
    deep_one
    deep_one 2012/05/30
    Windows版か…
  • PHP: 下位互換性のない変更点 - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Errors Exceptions Generators References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Context options and parameters Supported Protocols and Wrappers Security Introduction

    deep_one
    deep_one 2012/03/21
    「そのうち使えなくなるから」といわれてきた機能達が本当に使えなくなる。
  • 安全を考えてPHPの実行時設定を調整する

    PHPを初期設定のまま使うと、いろいろ問題が起こる可能性があります。今回は、問題の発生を未然に防ぐ設定法をいくつか紹介します。(編集部) 初期設定のままでは良くないところもある ここ数回はPHP実行時の設定について解説しています。実行時設定を変更する方法として、PHPの設定ファイル(以下php.iniファイル)に設定を記述する方法と、Apache HTTP Server(以下Apache)の設定ファイルにPHPの設定を記述する方法の2つがあり、前回はその使い分けについて解説しました。 サーバ全体で標準の設定値としたいものはphp.iniファイルに、バーチャルホストやURLごとに変更したいものはApacheの設定ファイルに記述する、という使い分けの指針も示しました。 今回は、php.iniで設定できる項目、つまりサーバ全体にかかわる設定項目の中でも、初期設定のままにしておくことがあまり適切で

    安全を考えてPHPの実行時設定を調整する
    deep_one
    deep_one 2012/01/10
    ロゴマークがなぜか表示できる(笑)
  • PHP5.3.7のcrypt関数に致命的な脆弱性(Bug #55439)

    PHP5.3.7のcrypt関数には致命的な脆弱性があります。最悪のケースでは、任意のパスワードでログインできてしまうという事態が発生します。該当する利用者は、至急、後述する回避策を実施することを推奨します。 概要 PHPのcrypt関数は、ソルト付きハッシュ値を簡単に求めることができます(公式リファレンス)。crypt関数のハッシュアルゴリズムとしてMD5を指定した場合、ソルトのみが出力され、ハッシュ値が空になります。これは、crypt関数の結果がソルトのみに依存し、パスワードには影響されないことを意味し、crypt関数を認証に用いている場合、任意のパスワードでログインに成功する可能性があります。 影響を受けるアプリケーション crypt関数を用い、ハッシュアルゴリズムとしてMD5を指定しているアプリケーション。 環境にも依存しますが、デフォルトがMD5の場合もあります。筆者のテスト環境

    deep_one
    deep_one 2011/08/23
    まぁ、そもそもMD5を使うな、というのもあるが…。あ、ひょっとして途中まではMD5をサポート終了するつもりでコードを書いていた?
  • PHPでセキュリティを真面目に考える

    オープンソースカンファレンス2011 Hokkaido #osc11do 「PHPセキュリティを真面目に考える」 LOCAL PHP部 佐藤琢哉(@nazo) http://labs.nazone.info/

    PHPでセキュリティを真面目に考える
  • PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト:phpspot開発日誌

    PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト 2011年05月23日- Benchmarks PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイトがあるようです。 同じことをやるのに複数の書き方があったりしますが、2つの書き方を並べてそれぞれどちらがどれだけかかったかという結果が記載されていて面白いです。 で、そのいくらかかったか?という秒数も、ページ上でリアルタイムに計算され、リロードすると実行され、実行タイムが表示されます。 サイトの作者環境による比較ではなく、その場で動いて何度も試せるので自分でその差を確認できるのがGood。 個人的には長年PHPをやっているのですが知らなかった物も多々あり、非常に勉強になりました。 1回のロードでは結果が変になることもあるので、サーバの負荷にならない程度に数回確認させてもら

    deep_one
    deep_one 2011/05/23
    その二つは本当に同じ事か?というのがある気がする。/「===」の方は、型が違うと分かれば変換して比較する必要が無い以上早くて当然だろう、という気がする。が、それを利用することは考えたことがなかった。
  • 大規模 Web サービスでログインを長期間保持するには SESSION は使わず Cookie とデータベースだけで実装する | ウェブル

    先日ペコリンという Web サービスを公開したのですが、これが初めての WordPress との複合会員向けサービスだったためか、ログインが途中で切れたり、記事投稿時のリダイレクトがかかるタイミングなどで SESSION が切れてしまうことがありました。 しかし Twit Delay では長期的にログインが保持されていたり、mixi とかではログイン時間を指定できたりするので、なんとかできるものだろうと考えていたら Twitter で教えてもらいましたのでまとめておきます。 SESSION だけを使ったログインの保持では長期ログインは不可 私は今までログインの保持は以下のようにしていました。 1 2 3 4 5 <?php ini_set('session.gc_maxlifetime', 60*60*24); ini_set('session.gc_divisor', 10000); s

    deep_one
    deep_one 2011/04/27
    セッションデータ・ガーベージコレクションの理解が間違っている…「期限切れになっているセッションデータ」が一斉に消えるだけ。gcの真の罠は「ディレクトリを共用したとき」に発生する…/あと、MD5は古い。非推奨
  • 過負荷に耐えるWEBサービス作成のための使えるPHPキャッシュテクニックまとめ:phpspot開発日誌

    過負荷に耐えるWEBサービス作成のための使えるPHPキャッシュテクニックまとめ。 サービス展開というとOSのチューニングや各種インフラソフトウェアのチューニング、更にはWEBアプリプログラム自体の効率化と、幅広い知識が必要になってきますが、PHPでWEBアプリを作る際によく効くキャッシュテクニックを用途・使いどころ別に説明します。 キャッシュをうまく効かせることで大幅に計算量を減らしてより多くのリクエストを少ないマシンで捌くことが出来、コストを下げたり、過負荷の悩みを減らせます。 個人レベルでのWEBサービス開発の場合、サーバ代がお財布を大きく圧迫しますが、最低のコストでサービスを賄うことに繋げられます、ということでPHPでサービス作ってやろうと思っている人は参考にしてみて下さい。 static変数でキャッシュ 特に何も入れなくてもそのまま使えるstatic変数。例えば、関数等で一定の計算

    deep_one
    deep_one 2011/03/10
    色々面白いが…個人的にはキャッシュを効かせるものを作らないな。いつもがちがちにステートフル。いやデータ解析結果とかはキャッシュ効かせるべきなのか?
  • 知っとくと便利なPHPのテクニック9つ:phpspot開発日誌

    9 Useful PHP Functions and Features You Need to Know | Nettuts 知っとくと便利なPHPのテクニック9つが掲載されていました。 初心者の方は勿論、PHPを長年使ってる人にも使えるテクニックが載っていましたので勉強がてらにメモ。 func_get_args() 関数で可変引数 を受け取る 通常、関数といえば、次のように引数と共に定義します。 function hoge($arg1, $arg2) { } のように定義して引数を受け取りますが、好きな個数で引数を受け取りたい場合は、次のようにfunc_get_argsで受け取れます。 function hoge() { $args = func_get_args(); foreach ($args as $key=>$value) { echo "arg{$key} is $value

    deep_one
    deep_one 2011/03/03
    ファイルの検索はファイルハンドラを開いてやっていたんだがそんな関数があったのか…
  • WEBサービス作るなら忘れてはいけないもう一つのPEAR「Openpear」の便利モジュール集:phpspot開発日誌

    Openpear :: Open PEAR Repository Channel WEBサービス作るなら忘れてはいけないもう一つのPEAR「Openpear」の便利モジュール集。 家のPEARよりいいんじゃないか?というぐらい便利なライブラリが揃っているOpenpearからよく使いそうな物をまとめてみました。 2011年2月現時点で186もの便利モジュールが登録されています。 ちょっと古いものも含まれており、動かないものもあるかもしれませんが便利そうなものをとりあえず羅列してみます。 Services_ShortURL_Googl goo.glにURL短縮するライブラリ。PEAR::Services_ShortURLのサブパッケージだそうです。 Services_Foursquare FoursquareのAPIを叩くライブラリ Services_SBM_Info はてブ数やTwitte

    deep_one
    deep_one 2011/03/01
  • PHP技術者認定機構が筆記と公開論文による資格「PHP5技術者認定ウィザード」を開始へ

    PHP技術者認定機構は2011年2月7日、最上級資格となる「PHP技術者認定ウィザード」の認定を2012年9月より開始すると発表した。セキュリティ、インターナル(内部構造)、パフォーマンス、フレームワークの4つの専門分野について、筆記試験と公開論文に基づき認定する。 4つのうち「PHP技術者認定セキュリティ・ウィザード」と「PHP技術者認定インターナル・ウィザード」は、エレクトロニック・サービス・イニシアチブ 取締役社長 大垣靖男氏が、「PHP技術者認定パフォーマンス・ウィザード」と「PHP技術者認定フレームワーク・ウィザード」はアシアル 代表取締役 田中正裕氏が監修する。 PHP技術者認定機構は、PHP技術者認定機構発起人会が2011年2月1日に設立した任意団体。理事長に吉政忠志氏、副理事長に桑村潤氏と永原篤氏が就任しており、特定非営利活動法人としての認可を目指すという。2011年4月に

    PHP技術者認定機構が筆記と公開論文による資格「PHP5技術者認定ウィザード」を開始へ
    deep_one
    deep_one 2011/02/08
    ろ、論文?最適なアルゴリズムについての考察とか?どの程度のレベルを意図しているのだろう?
  • PHP: パーサトークンの一覧 - Manual

    PHP 言語の種々の部分は、内部的に トークン で表現されています。 不正なトークンのシーケンスが含まれるコードスニペットの場合、 Parse error: syntax error, unexpected token "==", expecting "(" in script.php on line 10." のようなエラーが発生します。 この場合、トークン == が内部的に T_IS_EQUAL として表現されています。 以下の表に、全てのトークンの一覧を示します。 これらは、全て PHP の定数としても利用できます。 注意: 定数 T_* の使いかた T_* (T_ で始まる) 定数は、 PHP のベースとなるパーサ基盤に基づいて自動生成されます。 つまり、トークンの具体的な値は、PHP のバージョンが違えば変わる可能性があるということです。 つまり、バージョン間で互換性を保つために

    deep_one
    deep_one 2011/01/25
    今まで「まぁ意味は分かるか」という感じでログを読んでいたが、これが正式な解説なのか…
  • Dream.Build.Play 2012 Challenge

    All Microsoft Global Microsoft Security Azure Dynamics 365 Microsoft 365 Microsoft Teams Windows 365 Tech & innovation Microsoft Cloud AI Azure Space Mixed reality Microsoft HoloLens Microsoft Viva Quantum computing Sustainability Industries Education Automotive Financial services Government Healthcare Manufacturing Retail All industries Partners Find a partner Become a partner Partner Network Fin

    Dream.Build.Play 2012 Challenge
    deep_one
    deep_one 2011/01/14
    Xoopsに対応している…
  • JVNVU#479900: PHP にサービス運用妨害 (DoS) の脆弱性

    公開日:2010/12/01 最終更新日:2011/03/28 JVNVU#479900 PHP にサービス運用妨害 (DoS) の脆弱性 PHP の getSymbol 関数には、脆弱性が存在します。 PHP 5.3.3 revision 305571 より前のバージョン PHP の getSymbol 関数には、整数オーバーフローの脆弱性が存在します。 遠隔の第三者によって、サービス運用妨害 (DoS) 攻撃を受ける可能性があります。 アップデートする 開発者が提供する情報をもとに最新版へアップデートしてください。 ベンダ リンク PHP PHP - [svn] Revision 305571 US-CERT Vulnerability Note VU#479900 PHP getSymbol vulnerability allows denial of service JPCERT

    deep_one
    deep_one 2010/12/09
    getSymbol関数。「使わなければいい」というレベルであるとはいえ、PHP4で保守されない脆弱性が出始めたかな…
  • グラフ作成やデータ可視化を楽に美しくできる便利なサービス22個まとめ | Web担当者Forum

    このコーナーでは、ネットビジネスを強力に支援する製品について、それを支える技術や市場動向を説明し、さらに各社から提供されている製品を紹介する。競合商品がひしめく市場で、他社に差を付けるための武器として、ぜひ導入を検討してみてほしい。今回は、「グラフ作成・データ可視化」サービスだ。 売り上げの推移、業界におけるシェア、自社製品の出荷数内訳などなど…。「顧客の説得のため、ウェブサイトでもグラフ要素を掲載したい」といったケースは増えている。大手企業では、PHPを使いデータベースと連動させて動的に最新グラフを表示させる、といった仕組みを用意できる場合もあるが、たいていは「エクセルで作成したグラフを画像として貼り付け」といった、手作業感あふれるものだった。 だが、昨年末にGoogle Chart APIが登場して以降、さまざまなサービスや独自APIが増加し、選択肢がグッと増えてきた。無料で利用できる

    グラフ作成やデータ可視化を楽に美しくできる便利なサービス22個まとめ | Web担当者Forum
    deep_one
    deep_one 2010/11/11
  • PHP: static キーワード - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    deep_one
    deep_one 2010/09/28
    静的変数にオブジェクトが入らないのはちょっと問題かと思った。
  • PHPによるWordPressのカスタマイズ&自作プラグイン解説書 - ソシム | ブック | マイコミジャーナル

    ソシムは、『PHPによるWordPressカスタマイズブック─3.x対応』(藤壱 著)を発売した。価格は2,940円。 豊富なプラグイン群によってサイト制作でよく使われるWordPress書では、適切なプラグインがない場合に、自作のPHPプログラムによってさらなるカスタマイズを可能にする方法を解説している。テンプレートのカスタマイズや関数を利用したカスタマイズ、データベースへの直接アクセス、プラグインの自作方法などをレクチャーする。WordPress 3.0に対応。 【に関する情報はこちらまで】マイコミジャーナル・ブックチャンネルでは、新刊書籍や関連イベント、読書グッズなどの情報を受け付けております。受付窓口【mj-book@mycom.co.jp】までぜひ情報をお寄せください。

  • Manual :: プリペアドステートメント

    prepare() および execute() によって、より強力で柔軟性のあるクエリを実行することができます。 準備/実行 モードが有用なのは、 値が違うだけの同じクエリを何度も実行する場合です。 例えば、住所の一覧をデータベースに登録する場合などがこれにあたります。 それ以外に 準備/実行 が有用となる場面としては、 異なる SQL 構文を持つ複数データベースをサポートする場合が考えられます。 二種類のデータベースをサポートする必要があり、それらはそれぞれ INSERT の構文が異なっているとしましょう。 db1: INSERT INTO tbl_name (col1, col2) VALUES (expr1, expr2) db2: INSERT INTO tbl_name SET col1=expr1, col2=expr2

    deep_one
    deep_one 2010/09/14
    PEAR MDB2のprepareの構文が標準のSQLと違う気がする。標準では型の指定なんて行わないだろう?
  • アシアルとSST、PHPセキュアプログラミング教育コースを開始