並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 20 件 / 20件

新着順 人気順

ReDoSの検索結果1 - 20 件 / 20件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

ReDoSに関するエントリは20件あります。 securityセキュリティ正規表現 などが関連タグです。 人気エントリには 『正規表現の脆弱性 (ReDoS) を JavaScript で学ぶ』などがあります。
  • 正規表現の脆弱性 (ReDoS) を JavaScript で学ぶ

    先日、このようなツイートを書いたところ、かなりの反響がありました。 JavaScript の正規表現の脆弱性の例でいうと、例えば /\s+$/ は脆弱性があると言える console.time(); /\s+$/.test(" ".repeat(65536) + "a"); console.timeEnd(); 結構時間がかかるのがわかる。でも /\s+$/ を見て「これは危険だな」と理解出来る人はそんなにいない。JavaScript に限らないけれど。 — Takuo Kihira (@tkihira) February 17, 2022 これは一般に ReDoS (Regular expression Denial of Service) と呼ばれる脆弱性です。正確に理解するのが難しい脆弱性なので、少し解説してみたいと思います。 結論 長い記事になるので、最初に「とりあえずこれだけ知っ

    • ReDoS 検出の最先端 recheck の紹介 / State of the Art of ReDoS Detection

      YAPC::Japan::Online 2022 での発表資料です。 recheck:

        ReDoS 検出の最先端 recheck の紹介 / State of the Art of ReDoS Detection
      • Blog|その正規表現の書き方で大丈夫? ReDoS 攻撃の怖さと対策方法

        ReDoS とは、Regular expression Denial of Service の略称で脆弱な正規表現を利用することで起こる DoS のひとつです。 正規表現は利用者からの入力値の検証など色々な場面で利用されていますが、正規表現の記述は難しく、誤った記述をしてしまうと ReDoS の影響を受ける恐れがあります。 本記事では ReDoS の概要から対策方法まで解説していきます。 ReDoS とは メールアドレスや電話番号の入力が正しい形式になっているかどうかを確認するために正規表現を使うことがあると思います。 複雑な形式をマッチさせる正規表現を正しく書くことは難しく、書き方によっては処理に時間がかかることがあります。 ReDoS は、正規表現が使われている部分において、正規表現エンジンに対して処理時間が多くかかる入力を与えることでサービス停止が起こる脆弱性です。 Freezing

          Blog|その正規表現の書き方で大丈夫? ReDoS 攻撃の怖さと対策方法
        • 20日目: 正規表現が ReDoS 脆弱になる 3 つの経験則

          はじめに 皆さんこんにちは.3回生のらん(@hoshina350)です. 文字列マッチングに便利な正規表現ですが,テキトーに書くと脆弱になり得るという情報を耳にしてから色々と原因や対策を調べていました. しかし,多くの記事で紹介されていた対策方法は,「独自の正規表現を使用しないー」とか「 * や + などの繰り返し表現はなるべく使わないー」とかいう なんともふわっとしたものでした.これでは「いやぁ確かにそうなんかもしれんけど…そうゆう訳にはいかんやんか…」と納得できません. つまり,「本質的に何が問題」で,「具体的にどんな特徴のある正規表現が脆弱になり得るのか」を知りたい訳です. そこで,様々な文献を調査してみました.本記事では調査して溜まった知見を紹介していきます. 本記事は, Purdue大学のJames Davis教授による “The Regular Expression Denia

            20日目: 正規表現が ReDoS 脆弱になる 3 つの経験則
          • アプリからファイアウォールにまで使われる正規表現を標的にした「ReDoS攻撃」とは?

            サーバーやネットワークに意図的に負荷をかけ、サービス障害を引き起こすDoS攻撃の中でも、正規表現のパターン処理の脆弱性を利用した攻撃をReDoS攻撃と呼び、StackOverflowやCloudflareもその標的となったことがあります。パデュー大学の電気・コンピューター工学の教授であるジェームズ・デイビス氏が、ReDoS攻撃の原因となる典型的な正規表現とその対策について語っています。 The Regular Expression Denial of Service (ReDoS) cheat-sheet https://levelup.gitconnected.com/the-regular-expression-denial-of-service-redos-cheat-sheet-a78d0ed7d865 正規表現とは、いくつかの文字列をひとつの文字列でパターンとして表現する方法のこ

              アプリからファイアウォールにまで使われる正規表現を標的にした「ReDoS攻撃」とは?
            • 第2回 Pythonの脆弱性 ~ReDOS~ | gihyo.jp

              では、なぜこのようなことが起きてしまうのでしょうか。具体的な脆弱性の解説に移る前に、まずはReDoSのしくみについて説明します。 ReDoSのしくみ ReDosの脆弱性を理解するためには、そもそも正規表現によるマッチングを行う処理系である、正規表現エンジンのしくみについて知る必要があります。 正規表現エンジンの概要 正規表現エンジンとは、簡単に言えば「ユーザーから受け取った文字列(入力文字列)が、正規表現で表される文字列と合致するか否か」を判定するプログラムです。そしてこのプログラムのキモとなる「正規表現文字列の解釈」と「入力文字列が合致するか否かを判定する部分」は、「⁠有限オートマトン」を利用して実現しています。 具体的には、正規表現の文字列を有限オートマトンに変換後、入力文字列を有限オートマトンの入力として与え、文字列中に正規表現にマッチする部分があるか否かを、有限オートマトンの状態を

                第2回 Pythonの脆弱性 ~ReDOS~ | gihyo.jp
              • プログラム中の文字列チェック機能の脆弱性を自動修正する技術を世界に先駆けて実現~専門知識をもたない開発者でもReDoS脆弱性の修正が容易に~ | ニュースリリース | NTT

                日本電信電話株式会社(本社:東京都千代田区、代表取締役社長:澤田 純、以下「NTT」)と学校法人早稲田大学(本部:東京都新宿区 理事長:田中愛治 以下、「早稲田大学」)は、文字列のチェック機能の処理時間を長期化させコンピュータの負荷を大幅に増大させる攻撃を引き起こす脆弱性に対する実用的な自動修正技術を世界に先駆けて実現いたしました。文字列のパターンマッチに用いられる正規表現(※1)とは、特定の文字の並び(文字列)をルールに基づき簡略化して表現する方法で、Webサービスなどにおいてユーザの入力値が期待したものであるかの検証など幅広い場面で利用されています。難解な正規表現の仕組みやルールを深く理解し、検証すべき文字列を厳密に定義できていないと脆弱性になってしまうため、近年グローバルで大きな脅威となっています。この技術によって、専門知識をもたない開発者でもこうした正規表現の脆弱性の修正が可能とな

                  プログラム中の文字列チェック機能の脆弱性を自動修正する技術を世界に先駆けて実現~専門知識をもたない開発者でもReDoS脆弱性の修正が容易に~ | ニュースリリース | NTT
                • 「Ruby 3.2.0」が正式リリース ~WebAssembly/WASIをサポート、YJITは試験扱いを卒業/正規表現エンジンはReDoS攻撃への耐性を高める

                    「Ruby 3.2.0」が正式リリース ~WebAssembly/WASIをサポート、YJITは試験扱いを卒業/正規表現エンジンはReDoS攻撃への耐性を高める
                  • ReDoSから学ぶ,正規表現の脆弱性について - Qiita

                    この記事は DeNA 21 新卒 Advent Calendar 2020 の24日目の記事です.メリークリスマス! はじめに 今回は,ReDoS (Regular Expressions DoS)と呼ばれる,正規表現 (Regular Expression) のパターン処理の脆弱性を利用した攻撃 について説明します. 普段何気なく使う正規表現ですが,意外なところに落とし穴があります. この記事を通して,正規表現の扱い方を考えるきっかけになればいいなと思います. ※ もちろん脆弱性を利用した攻撃をしてはダメです. ReDoS攻撃とは ReDoS攻撃は,正規表現のパターン評価に時間を要する文字列を入力することで,サーバーの計算リソースを奪う攻撃です. まずはその攻撃の具体例を紹介します. いま,/^(([a-zA-Z0-9])+)+$/という正規表現1を考え,その正規表現に対して幾つか文字列

                      ReDoSから学ぶ,正規表現の脆弱性について - Qiita
                    • 第74回 正規表現の脆弱性「ReDoS」徹底解説 ~原理と対策から、Perlでの最適化まで(1) | gihyo.jp

                      Perl Hackers Hub 第74回正規表現の脆弱性「ReDoS」徹底解説 ~原理と対策から、Perlでの最適化まで(1) 本連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーは藤浪大弥さんで、テーマは「ReDoS徹底解説」(⁠1)です。 ReDoS解説にあたって─⁠─ 本稿の構成など 正規表現に関わる脆弱性として「ReDoS」があります。本稿の前半では、ReDoSとはどんな脆弱性でなぜ発生するのか理論的な立場から詳細に解説し、対策のためにすることをいくつか紹介します。後半では、ReDoSへの対策あるいはマッチの高速化のための、Perlでの正規表現実装上の工夫を紹介します。 後半で説明しますが、Perlの正規表現実装にはさまざまな工夫があり、標準的な実装とはやや異なる部分があります。Perlを使ってReDoSの説明をすると本質的でない部分が生じてわかりづらく

                        第74回 正規表現の脆弱性「ReDoS」徹底解説 ~原理と対策から、Perlでの最適化まで(1) | gihyo.jp
                      • 週刊Railsウォッチ: RubyのGCコンパクション改修、jemalloc、ReDoSの自動検出修正ほか(20220419後編)|TechRacho by BPS株式会社

                        週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ) 🔗Ruby 🔗 GCコンパクションの2つのカーソル移動順序を入れ替え PR: Reverse the order of GC compaction cur

                          週刊Railsウォッチ: RubyのGCコンパクション改修、jemalloc、ReDoSの自動検出修正ほか(20220419後編)|TechRacho by BPS株式会社
                        • GitHub - makenowjust-labs/recheck: The trustworthy ReDoS checker

                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                            GitHub - makenowjust-labs/recheck: The trustworthy ReDoS checker
                          • 週刊Railsウォッチ: 書籍『Programming Ruby 3.2 (5th Edition)』、ReDoSチェックサイトほか(20221102後編)|TechRacho by BPS株式会社

                            こんにちは、hachi8833です。StimulusをStimlusと書いてしまいがちです。 Rubyプログラマあるある間違い 1. DeviseをDeviceと書いてしまう 2. RSpecをRspecと書いてしまう(Sは大文字) あとひとつは? — Junichi Ito (伊藤淳一) (@jnchito) October 28, 2022 週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をい

                              週刊Railsウォッチ: 書籍『Programming Ruby 3.2 (5th Edition)』、ReDoSチェックサイトほか(20221102後編)|TechRacho by BPS株式会社
                            • Ruby3.2.0で導入されたReDoS対策の効果を確認

                              Ruby3.2.0でReDoS対策が入ったということで、2022年と2023年に報告したReDoSの脆弱性で公表されたものについて効果を確認してみました。 [1] [2] [3] [4] [5] [6] [7] [8] (2024年追記)Ruby3.3.xで確認したものはこちら Faraday Net::HTTP adapter PoC require 'benchmark' def attack_text(length) text = 'charset=' + "\t" * length + "a" + "\t" * length + "a" /\bcharset=\s*(.+?)\s*(;|$)/.match(text) end Benchmark.bm do |x| x.report { attack_text(10) } x.report { attack_text(100) }

                                Ruby3.2.0で導入されたReDoS対策の効果を確認
                              • The Regular Expression Denial of Service (ReDoS) cheat-sheet

                                IntroductionThis post is intended as a “technical two-pager” to summarize a security vulnerability called Regex-based Denial of Service (AKA Regex DoS, ReDoS). There are a variety of write-ups about ReDoS, but I’m not aware of a good one-stop-shop with a higher-level treatment of all aspects of the subject. I have included links at the end to more detailed treatments. I have used headings liberall

                                  The Regular Expression Denial of Service (ReDoS) cheat-sheet
                                • ReDoS checker | Devina.io

                                  Examine regular expressions for potential Denial of Service vulnerabilities Regular expressions can sometimes be crafted in a way that makes them vulnerable to Denial of Service (DoS) attacks. This tool can be used to examine regular expressions for such vulnerabilities, identifying patterns that could cause performance issues.

                                  • ReDoS脆弱性を自動修正する技術、NTTと早稲田大が「世界に先駆けて」開発

                                    NTT(持ち株会社)と早稲田大学は3月23日、プログラムの脆弱性の一つ「ReDoS脆弱性」を自動修正する技術を、世界に先駆けて開発したと発表した。専門知識のない開発者でも、ReDoS脆弱性を容易に修正できるという。 正規表現とは、特定の文字列をルールに基づき簡略化して表現する方法で、ほとんどのプログラミング言語に組み込まれている。Webサービスなどで、ユーザの入力値が期待したものかを検証するなど幅広い場面で利用されている。 ただ、検証すべき文字列が厳密に定義できていないと、脆弱性になってしまう。処理時間が長くなる入力を与えて計算リソースを消費し、負荷を大幅に増大させる攻撃が可能になるためだ。 ReDoS脆弱性が原因で商用のサービスが停止するインシデントはここ数年でたびたび発生しているという。 新技術では、ReDoS脆弱性がないことを保証するため、正規表現の書き方から曖昧さを排除し、任意の文

                                      ReDoS脆弱性を自動修正する技術、NTTと早稲田大が「世界に先駆けて」開発
                                    • 「Ruby」のuri.gemに正規表現サービス拒否(ReDoS)の脆弱性 ~修正版のv3.2.3が公開/

                                        「Ruby」のuri.gemに正規表現サービス拒否(ReDoS)の脆弱性 ~修正版のv3.2.3が公開/
                                      • Ruby 3.2 で ReDoS 対策/改善のために追加された `Regexp.timeout=` について - Qiita

                                        はじめに この記事は、記事投稿キャンペーン「【RubyKaigi 2023 連動イベント】みんなで Ruby の知見を共有しよう」の記事です RubyKaigi 2023 の Day 2 (2023/05/12) 16:00 - 16:30 Takashi Yoneuchi (tw:@lmt_swallow)さんの 「Eliminating ReDoS with Ruby 3.2 」 でお話があった ReDoS のタイムアウトについて実際に動かして検証してみました。 ReDoS について ReDoS は、Regular expression Denial of Service の略称です 正規表現の評価に時間がかかる文字列を入力しリソースを占有する攻撃です。 ReDoS について詳しくまとめてくださっている @flat-field さんの記事のリンクを張り説明は省略します。 また、 Rub

                                          Ruby 3.2 で ReDoS 対策/改善のために追加された `Regexp.timeout=` について - Qiita
                                        • ReDos検出プログラムの作成とOSSへの適用 #seccamp

                                          1. [Z-Ⅲ] ReDoSの検出プログラムの 作成とOSSへの適用 受講生:長﨑 舜, 三浦 優也, 根本 昌也, 片岡 歩夢, 八幡 悠二郎 講師: 新屋 良磨, 藤浪 大弥 チューター:芦田 裕飛 1 2. ReDoSとは? ReDoS (Regular expression Denial of Service) 脆弱な正規表現が原因で起こるDoS攻撃。 脆弱な正規表現に特定の文字列が渡されることで 実行に大きな負荷がかかることがある。 2

                                            ReDos検出プログラムの作成とOSSへの適用 #seccamp
                                          1

                                          新着記事