IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.
「XML」「セキュリティ」という単語でWeb検索すると、多くヒットするのはXMLデジタル署名やXML暗号などを説明したWebページです。 本日の日記では、それとはちょっと違うテーマ(XXEと呼ばれる攻撃)について書きます。 脆弱なコードと攻撃方法 さっそく脆弱性があるサンプルプログラムです。 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import org.w3c.dom.*; import org.apache.xerces.parsers.*; import org.xml.sax.*; public class Test1 extends HttpServlet { public void service(HttpServletRequest request, HttpServletRe
Posted by Shugo Maeda on 23 Aug 2008 Rubyの標準ライブラリに含まれているREXMLに、DoS脆弱性が発見されました。 XML entity explosion attackと呼ばれる攻撃手法により、ユーザから与えられ たXMLを解析するようなアプリケーションをサービス不能(DoS)状態にすること ができます。 Railsはデフォルトの状態でユーザから与えられたXMLを解析するため、大部分の Railsアプリケーションはこの攻撃に対して脆弱です。 影響 攻撃者は、以下のように再帰的にネストした実体参照を含むXML文書をREXMLに 解析させることにより、サービス不能(DoS)状態を引き起こすことができます。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE member [ <!ENTITY a "&b;
Rails2.0でscaffoldを行うと、HTMLと同じURL+.xmlでXMLの取得も行えます。リソースひとつだけ取得するのであればこのままでも大丈夫なのですが、たとえばuserとblogが1:nの関係で、userのXMLを取得する時に同時に複数のblogも取得したい場合どのようにすればよいのかわかりませんでした。 to_xmlを使わずテンプレートでがんばろうかなと思っていたところ、1年前のRyan’s Scrapsでまさにそのものな:includeオプションを見つけました。 @user = User.find(1) @out = @user.to_xml(:include => :blogs) respond_to do |format| format.html # show.html.erb format.xml { render :xml => @out } end <?xml
Latest topics > XML署名とハッシュを使って安全な方法でアドオンを更新できるようにする 宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能! « Firefoxカステラ Main ワサビとショウガ » XML署名とハッシュを使って安全な方法でアドオンを更新できるようにする - Sep 21, 2007 Firefox 3からは、安全な方法での自動更新に対応していないアドオンはインストールできなくなるようだ、ということを先日書いた。そっちのエントリに詳しいことを書いたんだけど、要約すると、「安全な方法での自動更新を提供する」方法には以下の3つのパターンがある。 Mozilla Add-onsにアドオンを登録し、そちらの自動更新の仕組みを利用す
Studying XML -- second step -- [ エスケープ ] (via XML の CDATA 中では ]]> のエスケープが必要)で ]]> を書くときは ]]> のようにエスケープすればよいみたいなことが書かれているけど、CDATA セクション内ではそもそも & の扱いもなくなる (CDATA セクション内では ]]> のみがマークアップとして扱われる。Within a CDATA section, only the CDEnd string is recognized as markup) ので意図した挙動 (]]> がアンエスケープ) にならない。 結論をいうと CDATA セクションに ]]> をそのまま含めることは不可能で、どうしても CDATA セクションを書きたいよぅって時は二つにわけないとダメ。すなわち <!CDATA[[]]]]><CDATA[
この文書は ECMA-357 ECMAScript for XML (E4X) Specification 2nd edition を訳者 (nanto_vi) が私的に訳したものであり、Ecma International またはその他の関連団体・個人とは一切関係ありません。 この文書は正規の仕様ではありません。正規の仕様に関しては Ecma International から PDF で公開されています。 翻訳の内容については保障しません。この文書の利用によって発生したいかなる損害についても訳者は責任を負いません。 翻訳上の誤りなどがあれば訳者 (ブログまたはメール <nanto (at) moon.email.ne.jp>) までご連絡ください。 Standard ECMA-357 2nd Edition / December 2005 序文 2002 年 6 月 13 日、BEA S
色々実験して、一応、正しい(?)対処方法を発見。 なんかXMLが大嫌いになった僕がいました。 amazon apiの場合、ネームスペースが xmlns="http://webservices.amazon.com/AWSECommerceService/2005-10-05" なので、 ns = new Namespae("http://webservices.amazon.com/AWSECommerceService/2005-10-05") var isValid = xml.ns::Items.ns::Request.ns::IsValid という風に、どうやらE4Xでエレメント毎に「ネームスペースの参照 ::」をつけてやらないといけないらしい。 どういうことかっていうと、AS3でXMLノードを他の関数とかに渡す場合には、一緒にネームスペースも渡してやらんと、関数で値が取得できない
This entry is a Japanese transration of Pete Lacey's "The S stands for Simple". Burton グループのアプリケーションプラットフォームサービスグループでは、 REST派とSOAP派の間でずっと継続中の議論がある。 その大部分は外部での議論によく似ている。 最近のやりとりの一つ、 SOAP と Web サービスフレームワークの複雑さの議論で、 SOAP 側は「WS-* の前は、SOAP は実際にシンプルだった。S はシンプルの略だ」といった。 さあ歴史を学ぼう。 2000年、悩める開発者が問題をかかえている。 開発者: うちの上司が先週末ゴルフをやってきて、 いわゆる SOAP なエンタープライズをやる必用があるんです。 でも私は SOAP が何なのか知りません。 教えてもください、 SOAP の人。 SOAP
Java等のオブジェクト指向はクラスベースのオブジェクト指向と呼ばれる。一方、JavaScriptはプロトタイプベース、あるいはインスタンスベースオブジェクト指向と呼ばれる。 クラスベースは、まずクラスを定義し、クラスを型とするインスタンスを作成することでプログラミングする。プロトタイプベースによるオブジェクト指向では、クラスの定義は必須ではなく場合によってはクラスという概念自体が存在しない。既存のオブジェクトのクローンとして新しいオブジェクトを作成し、そのオブジェクトに独自の性質を付加してプログラミングする。 JavaScriptのオブジェクトの性質は動的に変更可能。Java等では一度決定したオブジェクトの振る舞いは変更できないが、JavaScriptでは実行中の任意の場所でメソッドの動作を変更したり、新しく追加したり、削除したりすることができる。
このリファレンスについて これは、書籍「Ruby de XML」 内に掲載されているXPathの関数リファレンスをベースとしています。一部、 本書での記述と異なる部分もありますが (注1) 、本 質的には同じものですのでご了承下さい。 (注1) 書籍内では紙面の都合による不自 然な折り返しを防ぐために不必要な変数が導入されていたりします。 はじめに XPathの関数は以下の四つに分類されている。 ノードセット関数(node set function) 文字列関数(string function) ブーリアン関数(boolean function) 数値関数(number function) 関数の中にはハイフン(-)を含むものもあるが、REXMLでは、ハイフン をアンダーバー(_)に変更した関数も用意している。例えば、 a-b() という関数があったら、a-b()でも呼び出せるし、 a_b
"The Documents contained within this site may include statements about Oracle's product development plans. Many factors can materially affect Oracle's product development plans and the nature and timing of future product releases. Accordingly, this Information is provided to you solely for information only, is not a commitment to deliver any material, code, or functionality, and should not be reli
土壌汚染問題を解決するフィールド・パートナーズがPlatio Connectを導入 労働安全衛生法に基づく点検業務のアプリ化で年間1,800時間の労働時間を削減
November 9, 2005 Koen Vervloesem REXML (Ruby Electric XML) is the XML processor of choice for Ruby programmers. It comes bundled with the standard Ruby distribution. It's fast, written in Ruby, and can be used in two ways: tree parsing and stream parsing. In this article, we show some basic constructs on how to use REXML for XML processing. We also introduce the use of Ruby's interactive debugger
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く