並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 30 件 / 30件

新着順 人気順

制御文字の検索結果1 - 30 件 / 30件

  • 不必要な制御文字への対処 - pixiv inside

    こんにちは、晴れて2020新卒になったmipsparcです。最近は趣味の鉄道技術系同人誌の新版が出来上がって喜んでいます。 本記事では、入力値には必ずと言っていいほど混入する不必要な制御文字への対処方法をご紹介します。ユーザーに文字列を入力してもらうことのあるすべてのサービスで活用できる話かと思います。 不要な制御文字が入ることで生じる問題 前提として、この記事は制御文字類が必ずしも邪魔と言いたいわけではありません。 制御文字は多言語対応(特に右から左方向に記述する言語)などで重要なときもありますが、今回は問題が発生しうるケースのお話をします。 「‪腐向け」 「メリークリスマス‬」 「ゾンビ」 なんの変哲もない3つのイラストタグですが、どれも不可視の制御文字が混入しています。 $ php -r "var_dump(json_encode('腐向け'));" string(26) ""\u2

      不必要な制御文字への対処 - pixiv inside
    • オノッチ on Twitter: "友人から渡されたexeファイルによるウイルス感染問題、「流石にexeファイルは開かない」なんて人も騙されるのが、Unicodeの制御文字(RLO)で文字方向を途中から入れ替える手法。 ファイル名の途中にこの制御文字を入れ、そこか… https://t.co/oGDPTCHM2s"

      友人から渡されたexeファイルによるウイルス感染問題、「流石にexeファイルは開かない」なんて人も騙されるのが、Unicodeの制御文字(RLO)で文字方向を途中から入れ替える手法。 ファイル名の途中にこの制御文字を入れ、そこか… https://t.co/oGDPTCHM2s

        オノッチ on Twitter: "友人から渡されたexeファイルによるウイルス感染問題、「流石にexeファイルは開かない」なんて人も騙されるのが、Unicodeの制御文字(RLO)で文字方向を途中から入れ替える手法。 ファイル名の途中にこの制御文字を入れ、そこか… https://t.co/oGDPTCHM2s"
      • JVN#43561812: スマートフォンアプリ「+メッセージ(プラスメッセージ)」における Unicode 制御文字の扱いに関する脆弱性

        JVN#43561812 スマートフォンアプリ「+メッセージ(プラスメッセージ)」における Unicode 制御文字の扱いに関する脆弱性 ソフトバンク株式会社 Android アプリ「+メッセージ(プラスメッセージ)」12.9.5 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン 株式会社NTTドコモ Android アプリ「+メッセージ(プラスメッセージ)」54.49.0500 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン KDDI株式会社 Android アプリ「+メッセージ(プラスメッセージ)」3.9.2 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン

        • Fadis on Twitter: "ソースコードにUnicode制御文字を挟むことで人間には違う意味に見えるソースを作るトロイのソースが出てから各言語で対応が議論されている。対応が早かったRustは問題となっているコードポイントがコード中に現れるのを禁止したが、Py… https://t.co/h9KJeXHK5b"

          ソースコードにUnicode制御文字を挟むことで人間には違う意味に見えるソースを作るトロイのソースが出てから各言語で対応が議論されている。対応が早かったRustは問題となっているコードポイントがコード中に現れるのを禁止したが、Py… https://t.co/h9KJeXHK5b

            Fadis on Twitter: "ソースコードにUnicode制御文字を挟むことで人間には違う意味に見えるソースを作るトロイのソースが出てから各言語で対応が議論されている。対応が早かったRustは問題となっているコードポイントがコード中に現れるのを禁止したが、Py… https://t.co/h9KJeXHK5b"
          • 制御文字を表す正規表現

            決まった型のないデータ(例えば住所とか文章とか)を受け取る場合の入力値検証では、制御文字が含まれていないかというチェックを行う。 制御文字とは、16進表記で 00 ~ 1F と 7F の文字で、通常画面上には表示されない文字通り機器を制御するためのコード。 それぞれのコードがどのような意味かは以下のリンクを参照。 Wikipedia の ASCII 制御文字についての記事 許可する可能性のあるものだけ抜粋すると、タブ 09、改行 0A、復帰 0D。 住所などの単一行入力ではいずれも許可する必要なし。 文章であれば改行・復帰は許可する必要がある。タブを許可するかどうかは要件次第。 制御文字全てにマッチする正規表現 [\x00-\x1F\x7F] タブ・改行・復帰以外の制御文字にマッチする正規表現 [\x00-\x08\x0B\x0C\x0E-\x1F\x7F] 例えば perl ならこんな感

            • Visual Studio Code 設定 不可視文字・制御文字を表示させる - プログラミングや副業・フリーランスに関する情報

              Pythonの開発環境で導入した「Visual Studio Code」でデフォルトでは非表示になっている、「不可視文字」「制御文字」を表示する方法を紹介します。 Visual Studio Codeの導入方法は「Pythonの開発環境の構築-Visual Studio Code-」を参照してください。 前回はAnacondaのインストールから、ターミナルでのPythonの実行までを解説しました。今回はターミナルやコマンドプロンプトではなく、多機能なコード エディター「Visual Studio Code 」のインストールから設定方法を解説します。コード エディターとは?コードエディタとは、プログラマがプログラムのソースコードを編集することを目的として設計されたテキストエディタプログラムで、コードの実行やデバッグ、コンパイルなどの機能やコードの補完機能など多くの機能を備えているものもありま

              • ファイル名に制御文字が入ったファイルをS3にアップロードされて起きたエラー - Qiita

                起きたこと S3に保存されている画像一覧を表示するページを開こうとした際に、下記のエラーが発生しました。 原因 直前にS3にアップロードされた画像名に制御文字が入力されていました。 ↓こんな感じです。 検証ツールで見るとこんな感じ。 tokushuの前後に明らかに変な文字が入ってる笑 アップロード前のローカルで見るとこんな感じ。 ローカルだと全く変じゃないのに、S3にアップロードしてみると判明しました。 ローカルはトリミングされてるのかな? 対処 まず、S3コンソールから該当ファイルを直接削除しようとしましたが削除できませんでした。 おそらくS3コンソール側も制御文字を認識しておらずに削除できなかったのかな? オブジェクトの名前変更はできたので、S3コンソール上で制御文字を削除した名前に変更して対処しました。 恒久対応としては、S3アップロード時に制御文字をトリミングしてあげるといった下記

                  ファイル名に制御文字が入ったファイルをS3にアップロードされて起きたエラー - Qiita
                • python で json.loads() したときに 特定の制御文字列が入ってるとJSONDecodeErrorが返ってくる - thirose’s blog

                  問題 今回は以下のような文字列を json.loads() してみたときにおきた問題があったときの対応をまとめました。 sample_text = '{"key": "value \t value"}' 再現させる >>> import json >>> sample_text = '{"key": "value \t value"}' >>> >>> json.loads(sample_text) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/www/.pyenv/versions/3.6.5/lib/python3.6/json/__init__.py", line 354, in loads return _default_decoder.decode(s) Fil

                    python で json.loads() したときに 特定の制御文字列が入ってるとJSONDecodeErrorが返ってくる - thirose’s blog
                  • Windowsのcmdで制御文字を反映させる方法

                    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

                      Windowsのcmdで制御文字を反映させる方法
                    • Unicode C1制御文字とラテン1補助 - CyberLibrarian

                      範囲:0080~00FF UnicodeのC1制御文字とラテン1補助(The Unicode Standard C1 Controls and Latin-1 Supplement)を十六進数の数値文字参照で記述した表です。 C1 controls(C1制御) Unicode 表示 名称 備考1 備考2 0080

                      • U+0008等の制御文字を検知・除去してくれる textlint-rule-no-control-character を公開しました|ふじい

                        背景Macで入力されたテキストに、偶にU+0008(BACKSPACE)やU+000B(垂直タブ)といった制御文字が混在しているということがあり、去年仕事で悩まされることがありました。 最近でも制御文字が混在しているのを見つけて修正Pull Request送ったりもしました。 macOSだと何もないように見えても、Windowsだと豆腐が見えます。 この辺りtextlintで自動的に検知や修正やってくれそうと思い、自分でルールを作ってみました。それが以下になります。 GitHub

                          U+0008等の制御文字を検知・除去してくれる textlint-rule-no-control-character を公開しました|ふじい
                        • [Ruby] 標準入力を受け付ける際に ^H などの ASCII 制御文字を意図した通りに認識させる - Qiita

                          結論 STDIN.gets ではなく Readline.readline を使おう STDIN.gets Ruby で標準入力を受け取る方法を調べると、多くの場合、以下の実装方法が出てきます。

                            [Ruby] 標準入力を受け付ける際に ^H などの ASCII 制御文字を意図した通りに認識させる - Qiita
                          • 制御文字(tab)をgrepしたい - Qiita

                            Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

                              制御文字(tab)をgrepしたい - Qiita
                            • [RPGツクールMV Trinity]変数に文字を入れたい?制御文字で似たようなことができます! | いろはの小さな我が家

                              ツクトリの変数には数値しか保存(代入)できません。 でも、一般的なプログラミング言語と同じように、文字列を覚えさせられたら・・・そう思ったことはないでしょうか? 曜日を表示するサンプル【方法1】単純な実装例 ここでは、宿屋に泊まった翌日の朝、「月曜日」と曜日を表示するようなケースを考えます。 制御文字を使わず単純に実装するなら、下記のような処理になると思います。 (プログラミングで言うところのハードコーディング) 変数「曜日」=1の場合、「月曜日」を表示。変数「曜日」=2の場合、「火曜日」を表示。変数「曜日」=3の場合、「水曜日」を表示。変数「曜日」=4の場合、「木曜日」を表示。変数「曜日」=5の場合、「金曜日」を表示。変数「曜日」=6の場合、「土曜日」を表示。変数「曜日」=7の場合、「日曜日」を表示。

                              • すんなりわかるAviUtlのテキストコマンド・制御文字の使い方・やり方まとめ - Aviutl簡単使い方入門|すんなりわかる動画編集

                                色を変えたい文字を、上のように<#><#>で囲むことで、変更できます。 ○○○○○○の部分には、16進数表記のカラーコードを入れます。 ウェブサイトの作成をしたことがあればわかりやすいと思います。 色の種類は下記サイトなどを参考にしてみて下さい。

                                • lessで制御文字を表示 | technote

                                  表題の通り。 ■ 環境 Linux Mac OSX El Capitan ■ less railsの出力するログ(?)で単に`less`でファイルを見ると、下記のように見えてしまう。 $ less development.log : D, [2017-07-05T19:02:42.446115 #10632] DEBUG -- : ESC[1mESC[35mIp Load (1.2ms)ESC[0m SELECT ... D, [2017-07-05T19:02:42.450677 #10632] DEBUG -- : ESC[1mESC[36mUser Load (3.1ms)ESC[0m ESC[1mSELECT ... : この”ESC[1mESC[35m“とかを消したい。 -r [Enter] これで制御文字が認識(?)されて表示されるようになる。 上記であれば下記のようになった。

                                  • 【AviUtl】制御文字の使い方【テキストオブジェクト】

                                    制御文字とは?テキストオブジェクトに、任意の文字を打ち込むことで、 途中から文字の大きさを変えれたり、途中から文字の色を変えれたり、途中から文字のフォントを変えれたり、途中から文字の表示速度を変えれたり、途中から文字を太字にしたり、途中から文字を斜体・縁取りにしたり、と、いろいろな文字を表現することができます。 この機能のことを「制御文字」と言います。

                                    • AviUtlのテキストに制御文字を使う方法

                                      AviUtlにおける制御文字の使い方まずはAviUtlを起動して新規プロジェクトを作ったら、タイムライン上で右クリック→『メディアオブジェクトの追加』→『テキスト』を選択してテキストオブジェクトを作って下さい。 ↑基本的に上記のテキストの設定ダイアログの赤枠内に色々なコードを入れる事で様々な効果を付与できるようになります。 では、準備が出来た所で次項から具体的な使い方を記述していきましょう。 文字の大きさを変える方法 <s(変えたいフォントサイズに対応する半角数字)>(対象テキスト)<s>と設定ダイアログに入力するとコードに挟まれた文字の大きさが変更されます。 ↑例として『フォントの<s200>大きさ<s>を変える』というテキストを設定ダイアログに入力すると、 ↑こんな感じで『大きさ』という文字だけフォントサイズが200に変更されました。 要するに『<s○○○>』と『<s>』でテキストを挟

                                        AviUtlのテキストに制御文字を使う方法
                                      • JavaでASCIIの制御文字を置換する3つの方法 | Minory

                                        今までJavaに関する記事を投稿したことはありませんが、仕事で少しだけ文字コードの変換を行う際に使いましたので、記事にしたいと思います。 何分、Javaに関しては初心者ですので、誤り等ありましたらご指摘の程よろしくお願い致します。 初回はASCII制御文字を置換する方法について紹介します。 1. 正規表現を利用した置換方法 特定の文字を単純に指定した文字に置換するだけなら、文字列(String)に対してreplaceAll()を利用して1行で済みます。 str.replaceAll("\p{C}", ""); Stack OverflowにQ&Aがありましたので、そのまま引用しています。 https://stackoverflow.com/questions/6198986/how-can-i-replace-non-printable-unicode-characters-in-java

                                          JavaでASCIIの制御文字を置換する3つの方法 | Minory
                                        • 【JavaScript】JSON.parse()でエラー(リテラルの不正な制御文字)

                                          【JavaScript】JSON.parse()でエラー(リテラルの不正な制御文字) 2021.07.07 JavaScript JSON, 制御文字 とあるJSONファイルをJSON.parse()で読み込もうとしたところ、以下のようなエラーが出た。 Uncaught SyntaxError: JSON.parse: bad control character in string literal at line ○ column ○ of the JSON data 原因 JSONファイルに、改行コードなどの特殊文字が混入している。 コンソールやテキストエディタでは表示されないため原因がわかりにくい。 解決方法 JSON.parse()する前に、以下のようにして、改行コードなどの制御文字を取り除く。 let clean_jsonText = jsonText.replace(/[\u00

                                            【JavaScript】JSON.parse()でエラー(リテラルの不正な制御文字)
                                          • ASP.NET Coreの入力から制御文字を削除する - JBS Tech Blog

                                            WebAPI を開発・保守していると特殊な文字(制御文字)が入力に紛れ込んでいて、その場面では問題にはならないけれども後続処理でエラーが発生する。。。なんてことがよくあります。入力から特殊文字を削除する簡単な方法としては API それぞれに対する特殊文字を削除する専用の処理を実装する、リフレクションで汎用的な処理を実装して個々の API で呼び出す、など考えられますが、中途半端で漏れも発生します。 本記事では ASP.NET Core のミドルウェアを自作し、入力された JSON から一括で制御文字を削除する手法について紹介します。 試した環境 ASP.NET Core のミドルウェアとは ASP.NET Core のミドルウェアを実装する ミドルウェアのクラスを作成する ミドルウェアをパイプラインに登録する JSON から特殊文字を削除する リクエストボディを差し替える おわりに 試した

                                              ASP.NET Coreの入力から制御文字を削除する - JBS Tech Blog
                                            • 【AviUtl】プラグインで制御文字を簡単に使う方法

                                              イントロダクション今回は『テキスト編集補助プラグイン』というものを導入して、テキストに使う制御文字を楽に使用してみようという記事となります。 ↑こんな感じで、簡単操作で特定のテキストの大きさとか変更できますから、いちいち制御文字を暗記したり書き込んだりしなくて良いというメリットがあります。 まあ、制御文字とフォント名なんかを完全に暗記していて、尚且つタイピングが早い人とかだと使う意味は少ないんですが、私を含めてそういう人はあんまりいないような気がしますので、そういった一般人の方がこのプラグインを使うとムチャクチャ便利になったりします。 イントロダクションAviUtlのテキストで一部の文字を大きくしたり、色やフォントを変えたりできる機能が『制御文字』と呼ばれるものらしいです。他の人の解説動画を見ていたら色々とテキストに演出をしていたので、師匠達にやり方を訊いたら恐らくこの制...

                                                【AviUtl】プラグインで制御文字を簡単に使う方法
                                              • Unicode制御文字(LRO, RLO)でコピー・改変を防止 (構想)

                                                Unicode制御文字のうち、LRO(Left-to-right override, U+202D)とRLO(Right-to-left override, U+202E)は行中でも文字列の方向を変更する。 1行の中に何度もLROとRLOが入ると、カーソルキーが踊って楽しいことになる。 例えば、下のテキストの中でカーソルを動かしたり、文字列を選択しようとしても上手くできないはず。 ‮‭い‮を‭ろ‮る‭は‮ぬ‭に‮り‭ほ‮ち‭へ‮と ‮‭わ‮む‭か‮ら‭よ‮な‭た‮ね‭れ‮つ‭そ ‮‭う‮て‭ゐ‮え‭の‮こ‭お‮ふ‭く‮け‭や‮ま ‮‭あ‮す‭さ‮せ‭き‮も‭ゆ‮ひ‭め‮ゑ‭み‮し ※ Edgeは表示が崩れるので、Ctrl + A→Ctrl + Cでメモ帳にコピペで確認可能。 表示上は普通のいろは順にひらがなが並んでいるように見えるが、 実際のデータはまったく違う順序になっている。 ↓通常の

                                                  Unicode制御文字(LRO, RLO)でコピー・改変を防止 (構想)
                                                • スマートフォンアプリ「+メッセージ」に Unicode 制御文字の扱いに関する脆弱性 | ScanNetSecurity

                                                    スマートフォンアプリ「+メッセージ」に Unicode 制御文字の扱いに関する脆弱性 | ScanNetSecurity
                                                  • Unicodeの制御文字について

                                                    概要 Unicodeにはディスプレイに表示されない制御文字というのがあるらしい。 通常無害なものだとは思うが、古くは2011年に報告されているWindowsのファイル拡張子の偽装[1]や、最近では2021年に報告された、ソースコードに制御文字を埋め込み、人間のレビュワーが気づかずにシステムに悪意のあるコードを埋め込めてしまう脆弱性がある[2]。 確かに悪用できそうな特徴ではあるので、稼働中のサービスでどのような問題意識と対応が取られているのかを調べてみる。 事例 事例1: ブラウザで遊べる絵チャット(令和最新版) 制御文字のみを入力した悪意あるユーザがシステムのバリデーションを通過して非表示のユーザ名で登録できてしまったという話。こういうの普通のサービスはどうしてるんだろうか?なお、このブログで上がっているのは「非表示文字のみからなるユーザのプロフィールを別のユーザが表示できないため、悪用

                                                      Unicodeの制御文字について
                                                    • リポジトリ内の特定の制御文字を削除するワンライナー - あんパン

                                                      $ git grep -I --name-only $'\x08' | xargs -I{} sed -i -e "s/\x08//g" {} リポジトリ内にbackspace(^H)のような制御文字が含まれてしまっていることに気付いたとき、消すのに便利です。 -I でバイナリを無視する $'\x' で特定のASCIIコードの文字を検索する 今回はbackspace(^H == \x08)を削除したい あたりがミソです。これとあわせて、CIやpre-commit hooksなどで制御文字を検知したり自動で削除する機構があると良さそうです。 どうぞご利用ください。

                                                        リポジトリ内の特定の制御文字を削除するワンライナー - あんパン
                                                      • JVN#43561812: スマートフォンアプリ「+メッセージ(プラスメッセージ)」における Unicode 制御文字の扱いに関する脆弱性

                                                        JVN#43561812 スマートフォンアプリ「+メッセージ(プラスメッセージ)」における Unicode 制御文字の扱いに関する脆弱性 ソフトバンク株式会社 Android アプリ「+メッセージ(プラスメッセージ)」12.9.5 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン 株式会社NTTドコモ Android アプリ「+メッセージ(プラスメッセージ)」54.49.0500 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン KDDI株式会社 Android アプリ「+メッセージ(プラスメッセージ)」3.9.2 より前のバージョン iOS アプリ「+メッセージ(プラスメッセージ)」3.9.4 より前のバージョン

                                                        • 概要 - コマンド マクロ内の特殊制御文字

                                                          コマンド マクロは、キーボードのキーを押す操作を表したり、ユーザ入力要求に相当する特殊文字の使用に対応しています。 たとえば、次のマクロ内の円記号(¥)はユーザ入力要求、セミコロン(;)は[Enter]キーを押す操作を表します。 ^C^C_.text \.4 0 DRAFT Inc;;;Main St.;;;City, State; このマクロは、TEXT[文字記入]コマンドを開始し、ユーザが挿入点を指定するのを待ってから、3 行に渡って住所を入力します。3 連のセミコロン(;;;)シーケンスの最初のセミコロンはテキスト文字列を終了し、2 番目のセミコロンは TEXT コマンドを繰り返し実行し、3 番目のセミコロンは直前の行の真下の既定の配置を受け入れます。 マクロでは、次の表に示した特殊文字を使用することができます。

                                                            概要 - コマンド マクロ内の特殊制御文字
                                                          • Unicode C0制御文字と基本ラテン文字 - CyberLibrarian

                                                            範囲:0000~007F UnicodeのC0制御文字と基本ラテン文字(The Unicode Standard C0 Controls and Basic Latin)を十六進数の数値文字参照で記述した表です。 C0 controls(C0制御) Unicode 表示 名称 備考 0000

                                                            • emacs multi-term で端末制御文字が出る問題への対処 - Qiita

                                                              いろいろ苦労した末に、やっと emacs の multi-term 上でまともに zsh が動かせるようになったので、備忘録としてまとめる。multi-term や zsh のインストール方法は省略する。 設定なしのまま起動すると 4m という文字が出た。M-r で bck-i-search した時も同じように、4m という文字が現れて崩れるため、まともに利用できなかった。 いろいろ調べた結果、emacs term で使う terminfo (端末制御文字と制御動作の対応表)がないのが原因らしい。あまりお目にかかることはないが tic というコマンドを使って、このファイルを作ってやればいいようだ。参考サイトによると、Emacs のインストールディレクトリに eterm-color.ti というファイルがあるはずだが、見当たらなかった。代わりに、コメント欄に書かれていたファイルを web か

                                                                emacs multi-term で端末制御文字が出る問題への対処 - Qiita
                                                              1