カテゴリー
Other

秘密保護法案が政府の秘密を永遠に秘密にする?!

秘密保護法案(特定秘密保護法案、秘密保全法案)が話題になっていますが、どうも議論の論点がズレている。数面にわたる新聞の記事を読んで、随分おかしな議論だと感じたのでエントリを作りました。

カテゴリー
PHP Security

XPathクエリ(1)

XPathはXML文書をクエリして要素を取り出す仕組みです。XML文書を検索して結果を返します。

SimpleXMLにはxpathメソッドが用意されています。
SimpleXMLElement::xpath

<?php 
$result = $simple_xml_obj->query('my/x/path'); 
?>
カテゴリー
Computer Development PHP Security Programming Secure Coding

SQL識別子のエスケープ

SQLのリテラルはエスケープが必要であることは広く認知されていると思います。しかし、識別子のエスケープはあまり広く認知されていないように思います。

PostgreSQLの場合、識別子のエスケープAPI(libpqのPQescapeIdentifier)が提供されておりPHPでもpg_escape_identifier()として利用できます。PostgreSQLの場合は”(ダブルクオート)で識別子を囲むことにより、ダブルクォート無しでは利用できない文字(例えば日本語)も識別子に利用できるようになります。

カテゴリー
PHP Security Security

LDAPエスケープ – PHPのldap_escape関数

OWASP TOP10の1位のセキュリティ脅威はインジェクションです。

https://www.owasp.org/index.php/Top_10_2013-A1-Injection

SQLインジェクション、コマンドインジェクションはリファレンスとして掲載されていますが、何故かLDAPインジェクションは掲載されていません。しかし、OWASPの別の文書では簡単に解説されています。

カテゴリー
Other

Facebookのコメントプラグインを追加しました

大量に送信されてくるコメントスパムに対処できなかった為、コメント機能を無効にしていましたがFacebookのコメントプラグインを利用してコメントできるようにしました。このプラグインの導入はとても簡単でした。

https://developers.facebook.com/

にアクセスしてFacebookデベロッパーになり、画面上部の「Apps」メニューからコメントアプリを新規に作成し、

https://developers.facebook.com/docs/plugins/comments/

でページに挿入するコードを生成し、ブログテンプレートの適当な場所にペーストするだけで完了です。

1つだけ問題になったのはサードパーティークッキーです。

普段利用するWebブラウザではサードパーティークッキーを無効にしていたのですが、このプラグインにサードパーティークッキーは必須です。無効な場合、アバターは表示されていてもコメントを保存できません。なぜ「ログインしていない」とエラーになるのか、しばらく考えてしまいました。ご注意ください。