最初はサブセットフォントメーカーと WOFF コンバーターを使ってサブセットフォントを作成しました。 […]
たにぐちまことさんの書かれた『よくわかるPHPの教科書(以下、「よくわかる」)』を購入してパラパラと見ていたら、セキュリティ上の問題がかなりあることに気がつきました。そこで、拙著「体系的に学ぶ 安全なWebアプリケーションの作り方(以下、徳丸本)」の章・節毎に照らし合わせて、「よくわかる」の脆弱性について報告します。主に、徳丸本の4章と5章を参照します。 4.2 入力処理とセキュリティ 「よくわかる」のサンプルや解説では、入力値検証はほとんどしていません。しかし、入力値検証をしていないからといって即脆弱かというとそうではありません。徳丸本でも強調しているように、入力値検証はアプリケーション要件(仕様)に沿っていることを確認するもので、セキュリティ対策が目的ではないからです。 「よくわかる」の中で、私が見た範囲で唯一の入力値検証は、郵便番号のチェックをするものです。以下に引用します(「よくわ
Welcome to our website This is Verdant, a free, fully standards-compliant CSS template designed by TEMPLATED. The photos in this template are from Fotogrph. This free template is released under the Creative Commons Attribution license, so you're pretty much free to do whatever you want with it (even use it commercially) provided you give us credit for it. Have fun :)
RubyKaigi とか色々あって、ふと、僕がプログラミングを始めたころのことを何となく思い出したので走り書きしておきます。特に PHP に関しては記憶が曖昧なところがおおいので、 PHPer モヒカン族によるツッコミを歓迎します。 配列とハッシュが違う PHP においては、配列も連想配列もすべて array() と言う関数で生成する。むしろ、配列というものがキーを数字にしているだけの連想配列と言う位置づけだと思う。 Ruby ではもちろん、主たるコレクションには Array と Hash の二種類が存在し、区別される。最初はこの区別に若干戸惑いを覚えた。 ちなみに Python だとリスト・タプル・辞書ともっと増えるわけで、Javaのコレクションクラスに至ってはさらに多いし、この辺はどの実装が正しいとか適切とかではなく慣習なのかなあ、と思ったりする。 型(クラス)がより厳格 PHP では
12 Websites Useful in Downloading PHP Scripts | blueblots.com PHPのスクリプトやライブラリがダウンロードできる海外サイト12。 WordPress等の有名なオープンソースとかを活用するのもいいですが、小物のPHPスクリプトや、直接ソースに組み込んで使えたりするライブラリなんかを探せるサイトのまとめがありました。 日本にもこうしたサイトは多数ありますが、日本に見当たらない場合なんかは探してみると自分で1から作る手間が省けたりするかもしれません。 The PHP Resource Index Script Dungeon free-php PHP Classes Repository Scripts.com Hot Scripts 有名どころも多いですが個人的に知らないところも何個かありました。 リンク先は元のエントリを参照してみ
jQuery Form Framework - jFormer ログイン/ユーザ登録といったフォーム実装用のフレームワーク「jFormer」。 JavaScript と PHP、CSSファイルが1つのセットになっており、このフレームワークを使って便利なフォームをPHPで簡単構築できるライブラリです。 例えば、ログイン用のフォームを見てみると、次のように、demoユーザの案内を出すことも出来ます。 デモページ上には、単にデモだけではなく、実現するためのPHPコードがデモページ上から確認でき、比較的容易に実現できるようになっています。 全てPHPのコードで記述出来てしまうところがこのフレームワークの特徴。PHPとJavaScriptの思考をいったりきたりする必要がなくて作り安いというわけです。 テキストのバリデーション機能なんかも入ってます。 ここら辺もPHPでrequiredに設定することで
へんじがない。ただのポンコツのようだ。 ポンコツが今日も持ち場でガンバリつつ、 楽しく生きていくための備忘録ブログ。ぬわーーっっ!!2005年7月から絶賛「更新」中! 【この記事の所要時間 : 約 4 分】 ●PHPのセッション管理の問題とは? PHPのセッション管理は、セッションの固定化(Session Fixation)問題というのがある。この問題に対応するために、ログイン後にセッションIDを作り直して、ログイン後のセッションを保護するという対策が講じられる。 Session Fixationを原因としたセッションハイジャックを防ぐために、セッションIDを置き換える関数というのが、PHPには用意されている。それが、session_regenerate_id( )である。session_regenerate_id( )を使うとセッションIDは新しいものと置き換わるが、セッション情報を維持
PHPの参照渡しについて。参照渡しについて説明しているサイトでは圧倒的に関数の引数を例にしていることがほとんど。例えば以下のような感じ。 <?php $v = "default"; rewrite($v); print $v; function rewrite(&$arg) { $arg = "HelloWorld"; } これで「HelloWorld」と出力される。$vを直接変更していないのに、rewrite関数内での変更が$vに対して有効になっていると解く。関数の引数に「&」を付けなければ上書きされることはない(値渡し)。 最初はこれが一番判り易いけれど、もう一歩、変数代入の参照渡しと関数戻り値の参照渡しにも触れて欲しいところ。特に関数戻り値の参照渡しについて触れているサイトが本当に少ない。 変数代入の参照渡しというのは以下のコードのような場合。 <?php $a = "default
さくらにはすでにPEARがインストールされているのだけれどもなんでも古いとかいろいろ問題があって、どうせ使うなら自分でインストールし直したほうが良いよ、という記事を多く見かけたのでそうすることにした。 http://pear.php.net/go-pear go-pearの内容をgo-pear.phpとして /home/www/にアップロード。 (go-pear.phpのパーミッションは705もしくは755) ブラウザでこのgo-pear.phpにアクセスし、画面の内容に従ってインストール作業を進める。 「Installation prefix」はWebからアクセスできないディレクトリを指定したほうが良いので/home/ユーザネーム/www/pearにした。 「php.exe path, optional (CLI command tools)」はphpのパスを指定。さくらでは/us
Here is a brief tutorial on how to create a simple and secure jQuery, MySQL & PHP user manager. Before we start here is the final product. This script and tutorial is for beginners to PHP and jQuery an is created to give an idea of how to go about creating a modern and secure user system. A few features of the user manager are Unobtrusive Ajax login box. Modern CSS3 styling. Tiny size (Just 8kb) S
2010年9月24日・25日に開催された「PHPカンファレンス2010」にあわせて、PHP開発者のRasmus Lerdorf氏が来日されました。日本を訪れるのは2度目という氏に、PHPの現状とその根底にある思想についてお話を聞きました。 現在の仕事について 大垣:昨年 Yahoo! Inc.を退職されましたね。現在はどのような仕事をされているのでしょうか? Rasmus:WePayという起業したばかり小さな会社にいます。WePayはカリフォルニアにある、グループで支払いを行う処理を行うベンチャー会社です。 大垣:グループで支払いを行う、というのは、どういうことですか? Rasmus:グループで何かを買いたいときに、グループとしてお金を管理したいですよね。例えば、大学で学生が集まってプレゼントを買いたいという場合があります。どんなものでも構わないですが、10人が集まって共同でオンラインショ
PinocoはPHP製のオープンソース・ソフトウェア。Webシステムの開発に最適な言語として知られるPHPだが、それでも最近では素のまま使うことは少なくなった。何らかのWebアプリケーションフレームワークと組み合わせることでより手軽にセキュアにシステムを構築できるようになっている。 空のプロジェクト そして大型のWebシステムになるとデザイナーと開発者の分業が必要になってくる。分業になるとビューとロジックの分離が必要になるが、今回はそれを可能にするフレームワークであるPinocoを紹介しよう。 Pinocoがユニークなのは、PHPファイルへの直接のアクセスが行われないということだ。Webアプリケーションは別な場所に格納し、ゲートウェイファイルが全てのアクセスを取り仕切る。静的ファイルがある場合はそちらが優先されるので、画像やHTMLファイルなどは自由に配置できる。 コード例。$thisに変
ミツバチワークスのエンジニアは、「月間57億PV」という巨大なトラフィックをさばくため、さまざまな技術を駆使してインフラを構築している。主と副の2本立てでデータベースを運用し、300台のサーバを使いながら「負荷の限界」に挑むエンジニアに、技術ノウハウを聞く。 ミツバチワークスが運営するケータイブログサービス「DECOLOG」は、異色のサービスである。10代後半から20代前半の女性に最も人気のあるケータイブログサービスで、「デコメール」などを利用して、かわいくカラフルなブログを作成できる。広告基準を厳しくすることで女性ユーザーにも不安なく使ってもらえるような安心感を作り出し、口コミだけでじわじわとアクセス数を伸ばしてきた。 結果、2010年7月実績で月間57億PV(ページビュー)超、想定800万UU(ユニークユーザー)、会員登録者数180万件と、ケータイブログサイトでは国内最大のサービスとし
Welcome to LimeSurvey. The LifeSurvey. The best online survey tool - fresh like no other LimeSurvey is the simple, quick and anonymous online survey tool that's bursting with juicy insights. Calling students, professionals and enterprises: design a survey and get the best insights, it’s free and as easy as squeezing a lime. Make a free online survey now!
最近購入したPHP×携帯サイト 実践アプリケーション集を読んでいて妙な感じがしたので、この感覚はなんだろうと思っていたら、その理由に気づいた。本書に出てくるアプリケーションは、PHPのセッション管理機構を使っていないのだ。そんな馬鹿なと思ったが、目次にも索引にも「セッション」や「session」という語は出てこない。サンプルプログラムのCD-ROM上で session を検索しても出てこないので、セッションはどこでも使っていないのだろう。 そうは言っても、本書にはブログやSNSなど認証が必要なアプリケーションも登場する。本書で採用している認証方式はこうだ。 携帯電話の個体識別番号を用いた、いわゆる「かんたんログイン」のみを使う 認証状態をセッション管理機構で維持しない。全てのページで毎回認証する そのため、「iモードID」など、ユーザに確認せずに自動的に送信されるIDを用いる つまり、全て
via. はてなブログ 誰か書くんじゃないかと思いつつ、まあ、お決まりのパターンとしてPHP版も書いてみよう。 PHPのこと見てると、書き方とか取り巻く環境ってあんま変わってないなーとか思いつつ、そして何がモダンなんだっけ?新しければいいのか?って話だけど。 一般的な OSX 環境および Linux 環境における、モダンな PHP 開発環境の構築方法についてまとめてみた。最新のPHPとxdebugがあれば十分。 PHP 5.3.2 のインストール ソースから入れてた時期もあるけどやっぱパッケージが楽だな。。オフィシャルじゃないリポジトリを使えばパッケージで入れられる。 pearとpeclは、パッケージ入れるときに一緒に入れちゃう。 pear や pecl そのものは、PHPよりも頻繁にバージョンアップされるし、パッケージになってたりなってなかったりの管理が面倒だから基本的にpear/pec
OSC 2010 北海道の発表で使用したスライド資料「PHPで大規模ブラウザゲームを開発してわかったこと」 Tweet 2010/6/28 月曜日 matsui Posted in PHP, お知らせ | 7 Comments » 先日6月26日、札幌で「オープンソースカンファレンス2010 北海道」が行われ、無事終了することができました。 当日は来場者数が過去最高の約450名となり、閉会式は会場に収まりきらないくらいの大盛況でした。 ご来場者の方々、スタッフ・事務局の方々、本当にありがとうございました。 私も1コマセミナー枠を戴くことができまして、弊社で「ブラウザ三国志」というゲームのプログラム開発を行った際の苦労やノウハウなどをまとめた、「PHPで大規模ブラウザゲームを開発してわかったこと」という発表を行わせていただきました。 お越しいただけなかった方のためにも、その際に使用したスライ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く