タグ

programmingとPHPに関するtsupoのブックマーク (24)

  • 第43回 PHP 5.3のcrypt関数の問題 | gihyo.jp

    PHP 5.3.7のcrypt関数に重大なセキュリティ上の問題が発見されました。この問題は大きく報道されているのでご存知の方も多いと思います。同時にPHP体のセキュリティ状態についても不安に思った方も多いと思います。 PHP 5.3.7のcrypt関数のバグは、攻撃が成功した場合のダメージは非常に大きく、攻撃が可能な場合は必ず成功します。しかし、攻撃経路があるシステムは限定的でしょう。 crypt関数のバグ 最近のPHPで行われたcrypt関数のバグ修正は3つあります。 PHP 5.3.7で修正したバグ ─ その1 PHP 5.3.7ではcrypt_blowfishを利用した場合、8ビット文字(マルチバイト文字エンコーディングなど)を利用した場合に脆弱になってしまう問題を修正しました。 この脆弱性は2011/6/20にレポートされており、crypt_blowfishのコードを含む製品に影

    第43回 PHP 5.3のcrypt関数の問題 | gihyo.jp
    tsupo
    tsupo 2011/09/05
    ADODBは暗号化キーを生成するためにcrypt関数を使用しており,明らかに本来の用途以外の目的で利用している / crypt関数の使い方を明らかに間違えているプロジェクトが複数ある
  • PHP5.3.7のcrypt関数のバグはこうして生まれた

    昨日のブログエントリ「PHP5.3.7のcrypt関数に致命的な脆弱性(Bug #55439)」にて、crypt関数の重大な脆弱性について報告しました。脆弱性の出方が近年まれに見るほどのものだったので、twitterやブクマなどを見ても、「どうしてこうなった」という疑問を多数目にしました。 そこで、このエントリでは、この脆弱性がどのように混入したのかを追ってみたいと思います。 PHPのレポジトリのログや公開されているソースの状況から、PHP5.3.7RC4までこのバグはなく、PHP5.3.7RC5でこのバグが混入した模様です。RC5はPHP5.3.7最後のRelease Candidateですから、まさに正式リリースの直前でバグが入ったことになります。 バグの入る直前のソースは、ここの関数php_md5_crypt_rから参照することができます。以下に、おおまかな流れを図示します。まずはバ

    PHP5.3.7のcrypt関数のバグはこうして生まれた
    tsupo
    tsupo 2011/08/24
    strlcat というのは strncat_s の類似品だよなぁ……
  • Pinoco0.4はクロージャですごくなる - なんたらノート第三期ベータ

    Pinoco0.4.0をリリースしました。 Downloads · tanakahisateru/pinoco · GitHub 変更点はこちらで簡単に。 Changelog · tanakahisateru/pinoco Wiki · GitHub 重要な点は、データベースをサポートしたところ。もちろん単にPDO用のライブラリあります、ってだけではなく、Pinocoのコレクションでうまく動くようにあれこれしています。その基礎になるのが、Pinoco_Varsに追加されたregisterAsLazyメソッド。簡単にいうと、これで設定したプロパティは遅延評価で値を決めるというもの。実際にアクセスされるまで値の決定を遅らせます。いちど決まれば再決定のためにコストのかかる処理をしません。 また、Xdebugがない環境でも、通常のPHPエラーにスタックトレースが付いたり、捕捉しそこねた例外がすごく

    Pinoco0.4はクロージャですごくなる - なんたらノート第三期ベータ
    tsupo
    tsupo 2011/06/17
    PHPでもクロージャが流行るのかどうか、興味があるなぁ
  • PHPでTwitterのBOTを作っています。定期的なランダムpost、時報postはできるようになったのですが、リプラ... - Yahoo!知恵袋

    初めまして。@返信でなく純粋に、TL上の発言、単語に反応して発言するものを作りました。 $username = "ユーザーネーム"; $password = "パスワード"; //最新のTLのステータスIDを保存しておくファイルです。パーミッションは書き込み可に。 $filename = "./tmp/last.txt"; //開いて取得 $fp = @fopen($filename,'rb') or die("ファイルが開けません"); flock($fp, LOCK_EX); $line = fgets($fp, 64); fclose($fp); //自分がフォローしているfriendsのリストです。つまりTL $host = "http://twitter.com/statuses/friends_timeline.xml"; //ユーザーの発言一覧 //一番最初の時やファイルが壊

    PHPでTwitterのBOTを作っています。定期的なランダムpost、時報postはできるようになったのですが、リプラ... - Yahoo!知恵袋
  • PHP 5.3の名前空間仕様が変更されました

    Last Updated on: 2018年8月13日名前空間に関する議論は5年以上も行われていたのですが、今度こそ結論が出たようです。 何故このようなエントリを書くかというと、Software Design(技術評論社)の11月号にPHPの最新情報としてα版PHP 5.3を紹介しているからです。入稿後に仕様変更があったので最新号の記事ですが既に内容が古くなってしまいました。 # とは言ってもまだ新しい仕様のPHPは無いですが α版なので仕様や機能が大きく変更される事もありますが大きな変更がありました。見誌が刷り上がった頃に名前空間の区切り文字が”::”だと静的にメソッドを呼び出す場合やクラス定数を呼び出す場合に困る場合がある、とPHP開発者のMLで議論になり始めました。 ML上、IRC上、オフラインの打ち合わせが行われ、数週間におよぶ議論の結果が昨日MLに投稿されました。名前空間の区切

    PHP 5.3の名前空間仕様が変更されました
    tsupo
    tsupo 2008/10/27
    名前空間の区切り文字は"::"から"\"に変更される事になりました / ":::"にしてはどうか、という意見もありました → === があるんだから、::: があってもいいような、みたいな。
  • JavaScriptでFREDDYデータを読み込む

    FREDDYの利用方法 「第2回:JSONPとFREDDY(http://www.thinkit.co.jp/article/116/2/)」で、FREDDYのデータフォーマットについて説明した。今回は、実際にJavaScriptからFREDDYデータを読み込む手法、およびその裏でFREDDYのライブラリが行っている、WebサーバーとWebブラウザ間の通信手法を解説する。 FREDDYのプロトタイプ実装やマニュアルはFREDDYのWebサイト(http://freddy.yokoyama.ac/)で公開している。ここにあるxml2freddy.php(http://freddy.yokoyama.ac/index.php/Docs/xml2freddy.php/Usage)というツールを使えば、任意のXML文書をFREDDYフォーマットへ変換し、またそのデータをFREDDYで読み込むWeb

    tsupo
    tsupo 2008/08/19
    クライアント側のコードはSAXとほぼ同じ / つまり、SAXを使ったプログラミングの経験があれば、FREDDYフォーマットや仕組みを理解せずとも、大規模なデータを使ったWebアプリケーションを実現することができる
  • Account Suspended

    Account Suspended This Account has been suspended. Contact your hosting provider for more information.

    tsupo
    tsupo 2008/08/12
    Conditional-CSS is open source software, freely available for you to use and modify (U4EA CDDL license). The source files can be downloaded using the following link, or alternatively use the online compiler to generate the PHP or binary file you require
  • PHPユーザーは本当にほかの言語を知らないのか? ― @IT

    2008年7月21日、日PHPユーザ会主催のイベント「PHPカンファレンス2008」が東京・大田区産業プラザ(PiO)で開催された。今回はカンファレンスのメインイベントともいうべきパネルディスカッション「激論! PHPの次に学ぶ言語はこれだ」の様子をお届けする。 パネリストには、PerlRubyPythonJavaJavaScriptといったプログラミング言語を代表して、竹迫 良範氏(サイボウズ・ラボ)、高橋 征義氏(ツインスパーク/日Rubyの会)、柴田 淳氏(日Pythonユーザ会)、ひがやすを氏(Seasarプロジェクト)、id:amachang氏が参加。モデレータを日PHPユーザ会の個々一番氏が務めた。 事の起こりは「Attacking PHPPHPのユーザー会のイベントにおいて「PHPの次に学ぶ言語は何か」を真剣に議論することになった発端に、まつもとゆきひろ氏

    tsupo
    tsupo 2008/08/01
    どこでも動くというメリットが逆にデメリットになっている / 言語仕様は端的にいってひどい / RubyとプリントされたTシャツを突然脱ぎ捨て、PHPのロゴがプリントされたタンクトップ姿となるパフォーマンス
  • 自分の経験の枠組みは自分で変えられるか? - アンカテ

    例によってメタな方向に話を広げようと思うんだけど、Ruby VS PHP論争の背後には「自分の経験の枠組みは自分で変えられる」という発想の有無という問題があるのではないだろうか。 そう思ったきっかけはこれ。 影響力のある人 - L'eclat des jours(2008-01-31) artonさんは、Matzにっき(2008-01-29)のコメント欄にあった、「影響力の大きい人が発言してるので怒ってます」という一言レスに着目して、興味深い考察をしている。 影響力のある人ってのは、つまり権威ってことなんだし、自分で吟味しない人は常に一定の割合でいて(そうでなければ、世の中に権威という存在はありえないわけだが、実際、存在している)その人たちに影響を与える。 ってことは、権威がある人は、だめなものはだめ(良いものは良い)、と言うべきですね。 私も全くその通りだと思ったけど、冒頭のように考えて

    自分の経験の枠組みは自分で変えられるか? - アンカテ
    tsupo
    tsupo 2008/01/31
    PHP の言語仕様はユーザ側で勝手に変えることができない、っていうのはありそうだなぁ。「気に入らなければ、forkすればいい」というのが空気のようになってる世界とそうでない世界、みたいな。
  • セキュリティ過敏症 - ぼくはまちちゃん!(Hatena)

    初心者はPHPで脆弱なウェブアプリをどんどん量産すべし ↑のブックマーク うん。増田くんはいつもいいこと書くね! ブックマークの方には 危険だとか迷惑だとか踏み台だとか色々かいてあるけれど(というか踏み台ってなんだろ?) そんなに大切な個人情報をたくさん扱ってるサイトなんてどれだけあるかな。 みんなそういうサービスつくってるの? なんかすごいね。 ぼくの使っている範囲だと、(提供側が気をつけていないと) 当にまずいのは銀行と証券とカード会社のような、お金のからむサービスくらいだよ。 もちろん、他にメール内容だとか、購読しているフィードだとか、知られたくない個人情報なんてのは、人によってたくさんあるよね。 だけど、例えばぼくがメールサービス作りましたなんて言ったら誰か使う? それか無名の団体だったらどうかな。それで大切なメールやりとりしちゃうの? そう。そもそも、利用者もそれほどバカじゃな

    セキュリティ過敏症 - ぼくはまちちゃん!(Hatena)
    tsupo
    tsupo 2008/01/31
    「うさんくさいサイトだったら、住所も本名も預けたりしないよ。たとえばIPAのサイトには本名を預けない。」「そもそもセキュアでないとダメと言うなのなら、GoogleもYahooも今すぐ利用をやめるべきで、はてなに至っては
  • プログラミングPHP 第2版

    Rasmus Lerdorf, Kevin Tatroe, Peter MacIntyre 著、高木 正弘 訳 TOPICS Programming , Web 発行年月日 2007年10月 PRINT LENGTH 448 ISBN 978-4-87311-342-5 原書 Programming PHP, Second Edition FORMAT Webアプリケーション開発の定番言語であるPHP言語を、言語仕様から実用的なプログラミングテクニックまで詳細に解説―「書を読み終えることで、PHP言語の動作原理を知ることができます。また、PHPに付属する多くの拡張モジュールの使用方法を身に付け、自分でPHPのウェブアプリケーションを設計して作成できるようになるでしょう。」(書「はじめに」より) PHP言語を扱うすべてのユーザのための格的解説書。 訳者まえがき 序文 はじめに 1章 P

    プログラミングPHP 第2版
  • mixi Engineers’ Blog » Facebook Platformを使ってみた

    今日は米SNSのFacebookが提供している開発者向けのFacebook Platformに関して語ろうかと思います。もちろん、軽く使い方やサンプルコードなども紹介します。もともとは息抜きに遊び感覚で触ってみたのですが面白くて興奮気味になってしまいました。 そもそもFacebook Platformとは? Facebook(以後、FB)の持つSNSならではの巨大ソーシャルグラフを利用した第三者のウェブアプリケーション開発を実現した基盤(プラットフォーム)の事です。このプラットフォームを使って開発されたアプリケーションを使っていないFBユーザはいないと言える程、熱い代物です。数多くの有名なウェブ系企業もオフィシャルFBアプリをリリースして参戦してたりしてます。 アプリケーションのスクリプトはFBのサーバでホストするのではなく、開発者側のサーバでホストします。アプリケーションに対するリクエス

    mixi Engineers’ Blog » Facebook Platformを使ってみた
    tsupo
    tsupo 2007/09/07
    いずれは mixi もこの手の Platform を出すのかな?
  • はてなブログ | 無料ブログを作成しよう

    思いは言葉に。 はてなブログは、あなたの思いや考えを残したり、 さまざまな人が綴った多様な価値観に触れたりできる場所です。

    はてなブログ | 無料ブログを作成しよう
    tsupo
    tsupo 2007/08/10
    「R-0 @人工無能」の中の人
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    tsupo
    tsupo 2007/08/07
    各種 Twitter 系サービスの public_timeline 相当の情報を(RSSで)拾ってきてごにょるPHPコード
  • スクレイピングでタイムラインを1日分とか拾う - rytich's diary

    APIを使っても過去にさかのぼってuser_timelineを拾ってこれないのでPHPで直接Webを読んで1日分とか前回ひろった最後のidまでとかいただきます。 うごかすと$value['description']に抜き出したデータのHTMLが入ります。 //ここでPOST のとこでメールに送るなりXML-RPCなりコロ してください ストーキングとか彼氏の監視に便利です HTTP_Clientを使ってます かなりファンキー(特に正規表現部分)なのですぐに使えんくなるかもなので、エラー処理のとこでメール通知とかしたらいいかも ソース require_once "HTTP/Client.php"; $account = "rytich"; //抜き出すアカウント $max_page = 11; //最大何ページ分スクレイピングするか $validDatetime = true; //時間を表

    スクレイピングでタイムラインを1日分とか拾う - rytich's diary
    tsupo
    tsupo 2007/08/02
    APIを使っても過去にさかのぼってuser_timelineを拾ってこれない → ご存知かもしれませんが、friends_timeline の方は API でも過去に遡れるようになってます
  • Pythonのround関数の議論を読んでみた - hnwの日記

    さて、round関数の続きの記事を周囲からも催促されている気がするんですが、まだまとめ切れずにいて僕自身困っていたりします。PHPを擁護するような方向の話をしようかと考えているんですが、なかなか難しくて正直気が重いです*1。PHPの中の人の意図も一回はわかったような気がしたんですが、またわからなくなりました。 そんなわけで、横道にそれるわけではありませんが、今回は少し気楽な話題でいきたいと思います。 PHPのroundの件と似た話題を調べていたら、偶然PythonのMLの議論を見つけました。以下のURLとその続きを読んでもらえればわかりますが、質問者は0.0225を小数点以下第3位までに丸めようとして、Python2.3.5だと0.023に、Python2.4.1だと0.022になることに気づきました。 http://mail.python.org/pipermail/python-lis

    Pythonのround関数の議論を読んでみた - hnwの日記
    tsupo
    tsupo 2007/06/06
    この辺は実装する人のポリシー次第
  • [ThinkIT] 第2回:「VS.Php」に用意された機能を活用する (1/3)

    デフォルトの「組み込みデバッグ」モードでは、別途ApacheやPHPのセットアップしなくても、ローカル側でデバッグを行うことができます。 VS.PhpはApacheとPHPを独自に内包しており、それぞれデバッグ実行の際にコマンドラインモードで動作させることができます。そのため、ローカルPC内に独自にApacheをセットアップしている場合でも、競合を起こすことがありません。

    tsupo
    tsupo 2007/04/16
    VS.PhpはベースとしてVisual Studioを使用しているため、Internet Explorer上でのJavaScriptのデバッグが可能 / PHPとJavaScriptのデバッグを同一のセッション内で行うことができる
  • [ThinkIT] 第1回:Visual Stuidoインターフェースを用いたPHP開発用IDE「VS.Php」 (1/3)

    第1回:Visual Stuidoインターフェースを用いたPHP開発用IDE「VS.Php」 著者:アシアル  亀 大地   2007/4/3 PHPという言語の大きな魅力の1つは、その手軽さにあります。レンタルサーバのスペースを借りてしまえば、簡単なものであればテキストエディタでさっとアプリケーションを作成できる、そんな手軽さが今日のPHPの普及を支えた重要な要素の一端だといえるでしょう。 しかし、この手軽さが災いしてか、PHPを用いた実際の業務における開発の際にも、特にツールは使わずコーディングもテキストエディタで書き進めていく人が圧倒的に多いのが現状です。 今までPHPでの開発は小規模な物がその割合のほとんどを占めてきたため、そのような開発体制でも何とかこなせてきました。しかし今後は、IT業界の成熟と共に、PHPアプリケーションの開発案件は大規模かつ堅牢なものを低コストで求められる

    tsupo
    tsupo 2007/04/16
    Visual Studio 2005 の IDE を利用した PHP の開発環境。(VS.NET 2003 対応版もある) // VS.Php for Visual Studio 2005 のパッケージ版は 24800円、Standalone版(Visual Studio を持っていない人向け)は 39800円
  • ウノウラボ Unoh Labs: 日本語とPHP

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

    ウノウラボ Unoh Labs: 日本語とPHP
    tsupo
    tsupo 2007/03/05
    Windows 版の iconv.dll の問題点をまとめたページ、作った方がいいかな。私自身は、iconv にパッチ当てる方法じゃなくて、自前のラッパでくるんで使ってます。iconv の問題はラッパで吸収するというやり方
  • 【ハウツー】PHP版Ruby on Rails? - symfony (1) RoRを踏襲したPHPフレームワーク - symfony | エンタープライズ | マイコミジャーナル

    どの言語にも共通して言えることだが、特に、PHPを用いたWebアプリケーション開発の場合、その記述の自由さから、デベロッパは似たようなコードを何度も書いてしまう傾向がある。似たようなコードが多くあるソースは他のデベロッパから何をしているのかわかりづらいし、のちのちの保守にも悪い影響が出てしまう。 こんな状況を減らす手段として、デベロッパはフレームワークを有効につかい、開発・保守ともにかかる時間を少しでも減らしたい効率よく開発をおこないたい。ここではお手軽に試せてすぐにWebアプリケーションを作成することができてしまうPHPフレームワーク、symfonyを紹介する。 symfony teamは1日(フランス時間)、symfony 1.0.0rc2をリリースした。symfonyはsymfony teamによって開発され、The MIT Licenseのもとで公開されているオープンソースソフトウ

    tsupo
    tsupo 2007/02/15
    The MIT License / PHP5で書かれたMVCフレームワーク / 似たようなコードによる無駄を減らす / 公式サイトには10分でAjaxまでを盛りこんだWebアプリケーションを作成するムービーも公開されている