並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 293件

新着順 人気順

shift-JISの検索結果1 - 40 件 / 293件

  • 文字コード(UTF-8,Shift_JIS,EUC-JP,ISO-2022-JP)についての俺的まとめ - 今日もスミマセン。

    「プログラマのための文字コード技術入門」を読んで自分なりに理解した点をザックリとまとめてみる。 それほど正確性を求めて書いているわけではないので、間違ってる可能性大です。 間違いなどあればコメントなど頂けるとありがたいです。 それぞれの文字コードはどう違うのか? 日本語の文字コードは大きく以下の2つに分けられる JIS X 0208 文字集合をベースにしたもの Unicode文字集合をベースにしたもの JIS X 0208 文字集合をベースにした文字コードには、EUC-JP, Shift_JIS, ISO-2022-JP がある。 Unicode文字集合をベースにした文字コードには、UTF-8, UTF-16 などがある。 上で挙げた「文字コード」とは正確には「エンコーディング(文字符号化方式)」の事を指す。 文字符号化方式 文字集合って? 読んでそのまんま”文字の種類の集まり”。「キャラ

      文字コード(UTF-8,Shift_JIS,EUC-JP,ISO-2022-JP)についての俺的まとめ - 今日もスミマセン。
    • 「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita

      TL;DR Shift_JISにしただけでコンパイラが通らなくなる恐ろしい事件とその回避法について。 \ (¥)のASCIIコードは0x5c 表、能は良くない UTF-8は神 2023/12/06追記 誤りがあったので訂正します。こんな読まれると思ってなかったので正直ちょっとびっくりしていますが、いろいろコメントありがとうございました。(ツイート等全て拝見しました。) Shift_JISが悪いわけではない(デフォルトのエンコーディング設定の問題)→追記しました UTF-8にはUTF-FSSという仕様でこの問題が回避されている→マジでタメになる知識ありがとうございます OSによってデフォルトのエンコーディング設定が異なるせいで、デフォルト環境での動作がOSにより異なる→なるほど?(調査中) CRLFとLF問題では→なるほど?(調査中) そんな問題何を今更→UTF-8が出てから生まれたからです

        「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita
      • SoftBank iPhoneのShift_JISがすごいことになっている件 - 帰ってきた💫Unicode刑事〔デカ〕リターンズ

        下図は、SoftBank iPhoneのMailが用いるShift_JISのIBM拡張文字領域*1。どうだ、驚いたろう。 SoftBank iPhoneのMailは、charset=Shift_JISをよく使う。髙村薫の「髙」や宮﨑あおいの「﨑」などのWindows外字もShift_JISで送るし、絵文字もShift_JISで送る。しかし、WindowsのIBM拡張文字領域とSoftBankの絵文字領域は、もともと衝突しており、共存できない。なので、SoftBank iPhoneのShift_JISでは、IBM拡張文字のうち下図ピンク部分が使えない。 だったらその分は、NEC選定IBM拡張文字のほうを使えばいいじゃないですか、どうせダブってるんだから(下図)。というのが、大ざっぱに言えば、SoftBank iPhoneのMailが用いるShift_JISである。 その外字領域をまとめると、

          SoftBank iPhoneのShift_JISがすごいことになっている件 - 帰ってきた💫Unicode刑事〔デカ〕リターンズ
        • 外字を使うのはやめてくれ! Unicodeへの移行を呼びかけるMicrosoftの公式ブログ記事が話題に/今や「メモ帳」でさえテキストファイルをUnicodeで保存する時代! Shift_JISはやめよう【やじうまの杜】

            外字を使うのはやめてくれ! Unicodeへの移行を呼びかけるMicrosoftの公式ブログ記事が話題に/今や「メモ帳」でさえテキストファイルをUnicodeで保存する時代! Shift_JISはやめよう【やじうまの杜】
          • Go言語でag(The Silver Searcher)ライクな高速検索ツールをつくった。EUC-JP/Shift-JISも検索できマス。

            いまや高速パターン検索といえばag(The Silver Searcher)ですが、検索対象がUTF-8のテキストを前提としているため、EUC-JPやShift-JISといったファイルを検索するのに課題があります。 これまで、それらの日本語文字セットを検索できるようにするため、色々とagの改造、公開を行っていました。 ag(The Silver Searcher)でEUC-JP/Shift-JISのファイルも検索できるようにしてみた 日本語圏特化型ag -白金- の配備が完了しました しかし、特定の国の文字コードだけに特化した修正というのをmasterに取り込んでもらうわけにもいかず、派生ブランチとして追随するのも、やはり面倒… そこで年始にGo言語を触ったのをきっかけに、Go言語でパターン検索ツールをつくってみました。 せっかくなのでポストagを目指して、プラチナサーチャー(The Pl

              Go言語でag(The Silver Searcher)ライクな高速検索ツールをつくった。EUC-JP/Shift-JISも検索できマス。
            • ぼくがPDOを採用しなかったわけ(Shift_JISによるSQLインジェクション)

              補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブ、はてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2010年7月1日に公開されたもので、当時の徳丸の考えを示すものを、基本的に内容を変更せずにそのまま転載するものです。 補足終わり PHPのデータベース・アクセス・ライブラリPDOは、DB接続時の文字エンコーディング指定ができないため、文字エンコーディングの選択によっては、プレースホルダを使っていてもSQLインジェクション脆弱性が発生します。 追記(2011/06/19) ここに来て急にブクマが追加されはじめていますが、このエントリを書いてから状況が改善しています。PHP5.3.6(2011/03/17)にて、PDOでもデータベース接続の文字エンコーディングを指定できるようになりました。この版で、UNIX版のPHPでは解決しましたが、Win

                ぼくがPDOを採用しなかったわけ(Shift_JISによるSQLインジェクション)
              • Python でUTF-8, shift_jis, euc_jpなど日本語を使う方法

                [Home] [Setting up Mac OS X] [Python]: [ファイルを読む] 日本語を使う Pythonで日本語を使う Python 2.4以降では、標準で日本語を扱うことができます。 PythonのソースコードをUTF-8で書くには 日本語を扱うPythonのスクリプトの中では、UTF-8の文字コードを使うのが 楽です。 Mac OS Xのターミナルで日本語を扱う場合は、 ここの「4. Terminalの設定を変える」の 指示に従ってください。 以下、ソースコードの簡単な例を示します。 #!/usr/bin/env python # -*- coding: utf-8 -*- import re jtext = u'子猫が隠れんぼをしています' print 'jtext has', len(jtext), 'Japanese characters.' if re.se

                • UTF-8で動くRailsがShift_JISな外部システムと通信する方法 - BOOK☆WALKER inside

                  こんにちは。 メディアサービス開発部Webアプリケーション開発課のフサギコ(髙﨑)です。部署名が変わりました。 Ruby on Railsによるバックエンドの実装運用と、AWSによるサービスインフラの設計構築を中心とした、いわゆるテックリードのような立ち位置で働いています。 本記事では、UTF-8環境下で動くRailsがShift_JISな外部APIと通信する方法についてお話しします。 前提知識 文字コード UTF-8環境下で動くRailsがShift_JISな外部システムと通信するには Shift_JISな外部APIに対してPOSTリクエストする べた書きとしては Railsにおいては Shift_JISで使用できない文字が混ざっていないかをバリデーションする Shift_JISな外部システムからPOSTリクエストを受ける おまけ: ユーザのブラウザにShift_JISでPOSTさせる

                    UTF-8で動くRailsがShift_JISな外部システムと通信する方法 - BOOK☆WALKER inside
                  • Shift_JIS では、htmlspecialchars() を使用しても XSS が可能な場合がある - t_komuraの日記

                    以下のページに関連して、htmlspecialchars() を使用している場合でも XSS が可能かどうか少し調べてみました。 http://www.tokumaru.org/d/20090930.html その結果、いくつかのブラウザで文字エンコーディングに Shift_JIS を使用していた場合、XSS が可能なことを確認しました。 テストコードは以下の通りです。リンクにマウスポインタを乗せると埋め込んだ Javascript が実行されます。 <?php $_GET['a1'] = "\xf0"; // \xf0 - \xfc で可能 $_GET['a2'] = " href=dummy onmouseover=alert(document.title) dummy=dummy"; header( "Content-Type:text/html; charset=Shift_JIS

                      Shift_JIS では、htmlspecialchars() を使用しても XSS が可能な場合がある - t_komuraの日記
                    • 「文字はShift+JISで入力してください」 | 水無月ばけらのえび日記

                      公開: 2012年6月24日23時50分頃 武雄市の図書館が話題になったりしていて、ハッシュタグ #takeolibrary をたまに見たりしているのですが、keikumaさんがこんなツイートをされていました。 市長「今の検索システムは江戸時代末期のシステムです」 00:33:40 へぇ、と思って実際にサイトを見てみると……。 武雄市図書館・歴史資料館 (www.epochal.city.takeo.lg.jp)見た瞬間に呼吸が止まるほどの衝撃を受けました。 いきなりframeで、noframes要素の中身は「このページを表示するには、フレームをサポートしているブラウザが必要です」。 ないわー、江戸時代でもこれはないわー、などと思いつつ「本をさがす」のページを見てみるわけです。リンク先のURLはHTTPSなのに、HTTPSでないフレームの中に展開されて軽く驚きますが、ともあれ、実体は以下に

                      • Shift-JISテキストを正しく扱う perl 日本語パターンマッチ正規表現 の問題と落とし穴

                        最近の更新履歴 2006-10-28: 「Shift-JISの漢字を含むファイル名/パス名」について若干追記。 2005-03-26: 「最初に」中、XML日本語プロファイル第2版に基づき、若干追記。 2005-03-09: 「最初に」中、文章を若干修正。 2003-06-24: Shift-JISの漢字を含むファイル名/パス名 2003-05-31: 「最初に」中、「シフトJIS」などの表記について。 2003-05-24: CP932重複定義文字の変換 2002-08-30: Perl 5.8.0 について。 2002-01-17: 長い文字列に対する正規表現検索 2001-12-15: ShiftJIS::Collate が overrideCJK パラメータを廃止したことに伴う 日本語文字列を並び替えるの書き換え。 最初に 日本語の文字コードにはいくつかのものが使われています。ある

                        • 文字コード表 シフトJIS(Shift_JIS)

                          シフトJISの1バイトコード(半角文字)のエリア 0x00~0x1f、0x7f は制御コードです 0x20~0x7e はASCII文字です 0xa1~0xdf は半角カタカナです シフトJISの2バイトコード(全角文字)のエリア(JIS X 0208の漢字エリア) 上位1バイト  0x81~0x9f、 0xe0~0xef 下位1バイト  0x40~0x7e、 0x80~0xfc ですが機種に依存しない観点より、HTMLで以下の水色エリアは使用しないのが無難です 水色エリアはJIS X 0208 (1990) to Unicode 漢字コード表に存在しないコードです 0x8540~ 0x889e は機種依存文字の主なエリアです 0xeb40~ 0xeffc はMacOS では縦書用文字、Windows では特殊な外字エリアです 0xf040~ は外字エリアです(記載していません) perlで

                          • UTF-8 の文字列をできる限り Shift_JIS に変換したい - きりきりやま

                            Shift_JIS の CSV で連携する外部サービスがあり、DB では UTF-8 でテキストを持っていたため文字コードを変換する必要が生じた。 ところが UTF-8 に存在する多くの文字は Shift_JIS に対応がないため変換することができない1。 そこで、事前に NFKC 形式で Unicode 正規化することで変換可能な文字を増やすことを試みた。 まずは Unicode 正規化の前提として、Unicode の正準等価と互換等価について説明する。 以降の U+16進数 という表記は Unicode のコードポイント (文字に ID のようなものが割り当てられている) を示す。 また、コードポイントに対応する文字の詳細は https://codepoints.net/ といったサイトで確認することができる。 正準等価 例として、ひらがなの「が」について考える。Unicode では「

                              UTF-8 の文字列をできる限り Shift_JIS に変換したい - きりきりやま
                            • キャラ名に「ソ」をいれるとバグる! 古参開発者「うっ……頭の中で何かが……」/「ドカポンキングダム コネクト」で起きたShift_JIS文字コードの「ダメ文字」問題って?【やじうまの杜】

                                キャラ名に「ソ」をいれるとバグる! 古参開発者「うっ……頭の中で何かが……」/「ドカポンキングダム コネクト」で起きたShift_JIS文字コードの「ダメ文字」問題って?【やじうまの杜】
                              • Pythonと日本語表示と文字コード、unicode 、str 、utf-8 、shift-jis 、、、 - Cassiopeiaの日記

                                Pythonは使いやすい覚えやすい気持ちいいとまで言う人もいる。たしかにその通りだと思った。しかし、日本語を使おうとした時に急に気持ち良くなくなる。そう感じたのは僕だけではないはずだ。 ということで今日の日記のネタはPythonと日本語となりました。 (WindowsXPにココから "Python 2.5.1 Windows installer" をインストールした環境でテストしています。) まずは、あなたが書いたコードはutf-8で保存する。そして、そのコードの先頭には以下を記入する。 # -*- coding: utf-8 -*- あなたはエディタに何を使っていますか? 秀丸、メモ帳、vim、meadow、或いは Python Scripter、eclipse ? いずれにしてもファイルを保存する時のエンコードはutf-8にすべし。 では早速気持ちよくない(表示が文字化けする!)例。

                                  Pythonと日本語表示と文字コード、unicode 、str 、utf-8 、shift-jis 、、、 - Cassiopeiaの日記
                                • Shift_JIS、CP932、MS932、Windows-31J(文字コード関連) | 読み物 | ウナのIT資格一問一答

                                  Windows標準の文字コードはShift_JISではなく、Windows-31Jです。 それらの違いやCP932、MS932といった用語もあわせて整理してみましょう。 まずはShift_JIS。 これは日本語の文字集合を符号化する文字符号化方式のうちの一つです。 Microsoftにより、MS-DOSの標準日本語コードとして採用され、CP932という管理番号を与えられるとともに独自の拡張が行われました。 MicrosoftはこのCP932を独自に拡張することを、OEMメーカー(MS-DOSを搭載したパソコンを販売するメーカー)に許していたため、各OEMメーカーごとに異なる拡張が行われました。 その後、MicrosoftはWindows3.1の日本語版を出すにあたり、OEMメーカーにCP932の独自拡張を許すという方針を撤回し、当時、日本のパソコン市場で特に大きなシェアを持っていたIBMと

                                  • Shift_JISにおける危険な文字まとめ

                                    今時Shift_JISでプログラミングするバカな奴はいないだろうけど折角まとめたので公開 2バイト目がアスキーコードど丸被りしているものを列挙する@[\]^_`{|}~405B5C5D5E5F607B7C7D7E81 ー―‐/\??+??±×82・・・・・・A・・・・83ァゼソゾタダチボポマミ84АЪЫЬЭЮЯклмн85・・・・・・・・・・・86・・・・・・・・・・・87????????・????・・・??88・・・・・・・・・・・89院閏噂云運雲荏閲榎厭円8A魁骸浬馨蛙垣柿顎掛笠樫8B機擬欺犠疑祇義宮弓急救8C掘啓圭珪型契形鶏芸迎鯨8D后梗構江洪浩港砿鋼閤降8E察纂蚕讃賛酸餐施旨枝止8F宗充十従戎柔汁旬楯殉淳90拭深申疹真神秦須酢図厨91繊措曾曽楚狙疏捜掃挿掻92叩端箪綻耽胆蛋畜竹筑蓄93邸甜貼転顛点伝怒倒党冬94如納能脳膿農覗倍培媒梅95鼻票表評豹廟描府怖扶敷96法房暴望某棒冒本翻凡

                                      Shift_JISにおける危険な文字まとめ
                                    • Shift_JIS文化からUTF-8への移行ガイド - Qiita

                                      まだまだ場所によってはShift_JIS文化は根強く、2015年が終わろうとしている現在でも、「ようやく我が社もUnicodeでシステムを作ることを考えるっ!」なんてところは多くあるかと思います。 そんな現場で、これまでJavaでShift_JISでシステム構築してきたSIer向けのUTF-8移行ガイドです。 文字長のチェック 文字長の入力チェックはShift_JISの世界では、半角文字は1バイト、全角文字は2バイトなので、以下のようなチェックロジックになっていたかと思います。 if (inputValue.getBytes("Windows-31j").length > 20) { errors.add("hoge", new ActionMessage("errors.maxlength", "ほげ", 10)); } UTF-8ではそれらの文字は、1バイト~3バイトで表されるので、バ

                                        Shift_JIS文化からUTF-8への移行ガイド - Qiita
                                      • fudist - Shift_JISのダメ文字

                                        Shift_JIS(SJIS, cp932) の文字コードで、2byte目が0x5c の \ になっているものの俗称(だめ文字、駄目文字) 0x5cの \ は使用するフォントやロケールによりバックスラッシュまたは¥記号で表示されます。 ダメ文字を含む文字列やパス、ファイル名を処理する場合には文字化け、検索不可など様々な不具合が起きることがあります。 ダメ文字には ー ソ 十 表 など、使用頻度の高いものもあるので cp932を扱う場合には注意が必要です。 また広義には2byte目が 0x7c のパイプ文字 | になっている文字や、2byte目が正規表現などのメタ文字と重なる文字も含む場合もあります。 ダメ文字問題は正規表現をはじめとする様々な言語、システムで制御用のメタ文字として扱われる文字と同じバイト列が、SJISの漢字の2byte目に含まれていることにより起こります。 特に 0x5c

                                        • 説明してくれてるサイト 文字化けしてる場合は「表示→テキストエンコーディング→日本語(Shift JIS)」にすればおk!

                                          金策を模索しているあなたへ もしあなたが金策を模索しているなら、中小の消費者金融にチャレンジしてみてはいかがでしょうか? 中小消費者金融では、独自の審査基準を用いて貸し付けが行われているので、もし大手や銀行で断られた場合でも借りられる可能性があります。 ただ、中小消費者金融と言っても数多く存在しているので、特におすすめの会社を3つだけ厳選してみました。 もし、金策をお探しでしたら、一度審査だけでも申し込んでみるのがお勧めです。 中小消費者金融でも借りれないなら 上記で紹介した中小消費者金融でも借りれないあなたは、 ・総量規制をオーバーしている(年収の3分の1以上の借り入れがある) ・5件以上の他社借り入れがある といった状況ではありませんか? 正直ここまで来ると、さらに新たな借り入れ先を探すのはかなり困難です。 そのため、今後はおまとめローン(借換ローン)で借り入れを一本化し、金利を安くす

                                          • Shift JIS 2バイト目が0x5C等に成りうることによる問題 - Wikipedia

                                            Shift_JIS(シフトジス)は、コンピュータ上で日本語を含む文字列を表現するために用いられる文字コードの一つ。シフトJIS(シフトジス)と表記されることもある[1]。 かつてはベンダーによる独自拡張を含む文字コード群を指した曖昧な名称であったが、1997年にJIS X 0208で標準化された。

                                            • UTF-8 の文字列をできる限り Shift_JIS に変換したい(実践編) | うなすけとあれこれ

                                              先日、きりきりやままさんがこのような記事を公開していました UTF-8 の文字列をできる限り Shift_JIS に変換したい - きりきりやま それでは実際にそのような文字列変換を行うにはどうすればよいのか、またコメントでiconvについて触れられていたので、この記事ではUnicodeにおけるNFKC正規化をどうやって行うのか試してみることにしました。 追記 GoとPythonとJavaScriptでの例を足しました。またいくつかのscriptにおいてブラウザ上で実行できるURLを添付しました。 (2020-08-17 16:22) “Go” に表記を統一しました。 (2020-08-17 17:00) Ruby 僕にとって文字列処理といえばRubyなので、まずは以下のようなscriptを書いてみました。 puts "\u304c" puts "String#encode('Shift_

                                                UTF-8 の文字列をできる限り Shift_JIS に変換したい(実践編) | うなすけとあれこれ
                                              • htmlspecialcharsのShift_JISチェック漏れによるXSS回避策

                                                補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブ、はてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2009年10月9日に公開されたもので、当時の徳丸の考えを示すものを、基本的に内容を変更せずにそのまま転載するものです。 補足終わり このエントリでは、PHPのhtmlspecialchars関数の文字エンコーディングチェック不備をついたクロスサイト・スクリプティング(XSS)脆弱性について、PHP側のパッチが提供されない状況での回避策について説明します。 何が問題か PHPにおいて、XSS対策にはhtmlspecialcharsによって記号をエスケープすることが行われますしかし、htmlspecialcharsを利用していても、Shift_JISの先行バイトを利用して、XSSが発生する場合があります。 例えば、以下のようなINPUTがあ

                                                • 第3回 PHP と Shift-JIS 環境での文字化けについて � サイオンコミュニケーションズ株式会社 — 沖縄県でのコールセンター、ネットワーク、システム開発

                                                  検証用ソース1 <HTML> <FORM METHOD="POST" ACTION=" testPOST.php "> <?php // POSTで送られてきたデータ内に含まれるを削除して変数に格納 $input = stripslashes($_POST["input"]); // POSTで送られてきたデータを変数に格納 $output = $_POST["input"]; ?> 入力 <INPUT TYPE="text" NAME="input" VALUE=<php print str_replace(""",""",$input); ?>> <BR> 出力 <INPUT TYPE="text" NAME="output" VALUE=<php print str_replace(""",""",$output); ?>> <BR> <INPUT TYPE="submit" VAL

                                                  • 携帯サイトをUTF-8で出力するかShift_JISで出力するか - F.Ko-Jiの「一秒後は未来」

                                                    携帯サイトをUTF-8で出力しようかShift_JISで出力しようか悩んでいました。 超手抜きでウェブサイトをモバイル対応 2008 – 15Pubを読むと「UTF-8でも大丈夫」とあるのですが、ウノウラボ Unoh Labs: 携帯サイト作成時のXHTMLでの相違点では「文字コードはShift_JIS」と書いてあります。 ネットで調べてみるとポイントになっているのは au の仕様で、公式ページには「EZwebでサポートする文字コードはShift-JISです」とあるにも関わらず、UTF-8でも文字化けすることなく表示できてしまうとのこと。 色々迷った挙げ句、「楽だから」という理由でまずはUTF-8で出力することにしました。 HTMLのContent-Typeは以下のように記述。 <meta http-equiv="content-type" content="application/xht

                                                      携帯サイトをUTF-8で出力するかShift_JISで出力するか - F.Ko-Jiの「一秒後は未来」
                                                    • Perl XMLでencoding='Shift_JIS'や'euc-jp'を使う

                                                      by Hippo2000(2000/7/12) Perlを使って日本語の入ったXMLファイルを処理しようとするさい、これまではencodingをどうするかというのが1つの悩みでした。 私は好きなマッピング・ファイルを"Shift_JIS"、"euc-jp"などのためのマッピング・ファイルにするためのスクリプトmkenc.plを作成しました。 何はともあれという形で公開します。ご意見などありましたらメールをいただきたいと思います。 目次 1. はじめに 2. ファイルとその内容 3. 使い方 1. 背景 村田真さんの"Japanese_Encoding.msg"にもあるように、現バージョンのXML::ParserとXML::Encodingには"Shift_JIS"や"euc-jp"という文字セットためのマッピング・ファイルは入っていません。 このために、XML::Parserを利用す

                                                      • Shift_JIS 文字コード表

                                                        注 このページはWindowsMeというOSでJavaの学習をしていた時代にファイル内の文字コードを見るときの参考に書かれものです。ページの文字コードもShift_JISのままにしてあります。 このページで説明している文字コードは、JIS X 0208 にNEC選定IBM拡張文字とIBM拡張文字を加えたものです。最近では拡張文字を含んだものをwindows-31jとかCP932とよんで、Shift_JISは拡張文字を含まない場合をいう傾向にあります。 Windows7から JIS X 0213 に対応しましたが、これをShift_JIS(Shift_JIS:2004)にすると拡張文字の部分が0213で追加された文字とは衝突します。Windowsでは互換性の確保の観点からShift_JISのテキストファイルはWindows-31jにしますから、ここに書かれた情報はいまでも合致するはずです。た

                                                        • UTF-8の動的コンテンツをShift_JISと誤認させることで成立するXSS - masa141421356’s blog

                                                          文字コード指定の無いUTF-8のコンテンツでは、ブラウザ側の文字コード自動認識でシフトJISと誤認させることで、HTMLの特殊文字を一切使わずにXSSが成立する場合があります。 原理 UTF-8 では1文字が3バイトマッピングされる場合があります。 そこで、これをShift_JISと誤認させると、3バイト目と次の1バイトをセットで1文字と誤認させることができます。これにより、HTMLの区切り文字の効力を失わせてスクリプトを注入することが可能です。 例:"あ" = E3 81 82 なので、シフトJISと誤認すると "縺" (E381) +余分な先行バイトの 0x82 具体例 例えば、動的なコンテンツ(UTF-8で応答を生成) <html> <head> <title>abcde</title> </head> <body> <form> <input type=text value="ユー

                                                            UTF-8の動的コンテンツをShift_JISと誤認させることで成立するXSS - masa141421356’s blog
                                                          • Shift_JIS と Windows-31J (MS932) の違いを整理してみよう |

                                                            いつまでたってもエンジニアを悩ませる問題として「文字コード」があります。 その中でも質が悪いのが Microsoft ページコード 932 いわゆる Windows-31J だと思います。 Unicode がだいぶ普及したとは言え、まだまだ根深い問題です。 本稿では Shift_JIS と Windows-31J の違いについてまとめてみたいと思います。 とは言え筆者自身、Shift_JIS や Windows-31J などが誕生した当時にリアルタイムで歴史を見てきた人間ではありませんので、あくまで Wikipedia をベースに筆者なりにまとめたという点をご了承ください。 (誤りがあった場合にはご指摘頂ければ幸いです) Shift_JIS (CP932) の誕生 Shift_JISは、漢字を含む日本語を表現できる文字コードとして1982年に誕生しました。 Shift_JIS はマイクロソ

                                                            • S-MEMO(エスメモ): PHPのShift_JIS文字化け対策1

                                                              PHPで開発の経験を積んでいくと必ずと言っていいほど文字化けに悩まされます。 PHPに限ったことじゃないけど、文字化け対策は私達WEB業界の永遠のテーマかなって思ってます^^; 私は文字コードを統一したり、文字コードの変換などある程度ルールを決めてうまく回避してます。 WEBシステム開発において、「Shift_JIS」はかなりの曲者で、私もかなり苦戦してきました。 一番問題になったのが「\」マークが自動でついてくることで、例えばフォームの文字列に「表示」を入力してフォームを送信するとフォームの値が「表\示」となって返ってきます。 この業界で仕事を始めた頃は「Shift_JIS」を使用しないで「EUC-JP」等で統一することでうまく回避してきたのですが、どうしても「Shift_JIS」で開発しなきゃいけない場合もあります。 例えば、携帯サイトを作る場合は古い機種も対象にいれるので

                                                              • Shift_JIS に含まれない文字をエスケープ (Jcode.pm編)

                                                                しかし HTML での利用においては、 最近のブラウザは &#xHHHH; 形式で Unicode のコード(UCS2)を指定すると、 クライアント側に該当フォントがあれば、表示できるようになります。 本ページでは、Perl+Jcode.pm を使って その自動変換を行うパッチをご紹介します。 更新履歴 2006/11/05 - Encode::FB_XMLCREF は、Encode の特定のバージョン(2.08~2.12)で不具合が発生します。 Encode::FB_XMLCREF でなく Encode::XMLCREF を利用するように、記述を修正しました。 2005/06/20 - Jcode.pm 2.00 に合わせてパッチ適用手順を変更しました。 2005/02/18 - Perl 5.8.1以降+Jcode.pm 1.99以降に関する記述を追加しました。 2005/02/17

                                                                • Pythonで日本語文字列 (UnicodeとUTF-8, Shift-JIS, EUC-JPなどの相互変換) - プログラミング工場 / Python

                                                                  2010年05月05日 22:37 カテゴリPython Pythonで日本語文字列 (UnicodeとUTF-8, Shift-JIS, EUC-JPなどの相互変換) Posted by yawamen No Trackbacks Tweet ※2.*系の話です.3.*系は違うので注意. Pythonで日本語を扱う場合,UTF-8やShift-JIS, EUC-JPなどの各種文字コードが使えますが, これらとは別にPythonにはUnicode文字列というものが存在します. ※PythonではUTF-8とUnicodeは別物です. 詳しくはマニュアルを読んで頂くとして,ここではソースコードの書き方やいろいろな変換について紹介します. 【ソースコード中に日本語を書くために】 まず最初に,基本的なこととして,何も考えずにソースコード中に日本語文字を書いてしまうと次のようなエラーが出る場合があ

                                                                  • auとSoftBankのShift_JISからUnicodeへの変換規則 - スコトプリゴニエフスク通信

                                                                    共にEncode::JP::Mobileのdat/*-table.yamlのデータで検証。 SoftBankのShift_JISからUnicode規則が分かったのでスッキリした。これでShift_JIS(cp932)⇔Unicode⇔UTF-8を機械的に変換できる。 def softbank_sjis_to_unicode(sjis): high = sjis >> 8 low = sjis & 0xff if high == 0xf7: if low else: base = 0xe200 elif high == 0xf9: if low else: base = 0xe300 elif high == 0xfb: if low else: base = 0xe500 else: raise ValueError("not softbank emoji") if low elif lo

                                                                    • SublimeText2 で Shift-jis を使う - Qiita

                                                                      SublimeText2 は大変便利なテキストエディタですが、shift-jis に対応していないのが玉にキズでした。 そんな時、@umibose さんのツイートが! Sublime Text 2でSJISもいける!github.com/seanliang/Conv… — Hayakawaさん (@umibose) 2012年10月11日 ふむ、ConvertToUTF8 というものできるのか。というわけで早速試してみました。 以下手順。 1. Sublime Package Control の導入 Installation – Sublime Package Control – a Sublime Text 2 Package Manager by wbond の手順。 まず、SublimeText2 にパッケージコントロールシステムを導入します。(既に入っていればスキップ) Sub

                                                                        SublimeText2 で Shift-jis を使う - Qiita
                                                                      • AjaxでShift_JISやEUC-JPは使えるのか?-1- responseText編

                                                                        Testnetがアップデートされたのは知ってたけれど、libra-authのデモも動かなくなったのでちょっと調…

                                                                        • ブラウザのデコード機能を利用した Shift JIS などの読み込み : document

                                                                          3月12 ブラウザのデコード機能を利用した Shift JIS などの読み込み はじめに JavaScript でバイナリから文字列を取り出したら Shift JIS だったなんてことよくありますよね。 そういう文字列もさっと表示したいことがあります。 読み込む方法はいくつかある これらの文字列を読み込む方法はいくつかあって、自分が把握してるだけでも以下のものがあります。 Shift JIS と UTF-16 の対応表をつくる ぽりごんさんの文字コード変換ライブラリ Blob, File API を使って読み込む 右京さんの javascriptのnative APIで任意の文字コードからutf8に変換 script, Data URL を使って変換 1, 2 の方法についてはそれぞれ解説や実装があるのですが、3 の方法については見当たらなかったので説明してみます。 準備 念のため 2 段

                                                                          • its55 lab » C++でShift-JISをUTF-8に変換する

                                                                            6月 11th, 2008 Posted in C++ Windowsアプリケーションでもネットワークにつながって、サーバアプリケーションと連携することが多くなってきてますねぇ。ネットワークといえば文字コードはUTF-8なイメージがあるワタクシですが、C++ではShift-JISなアプリばっかり作ってきたので、UTF-8に変換するにはどうしたらいいの?ってことでまとめます。 C++でShift-JISをUTF-8に変換するには、 Shift-JIS→UTF-16→UTF-8 の順番で変換する必要があります。 そもそも、UTF-16とUTF-8はどう違うのか。UTF-16は文字に割り当てられる番号(コードポイント)が2バイトで格納されます。一方UTF-8は、0~127のコードポイントは1バイトで格納され、128から上のコードポイントは、2~6バイトで格納されます。0~127のコードポイントで

                                                                            • テンプレートShift_JISでそれ以外UTF-8の場合 - Unknown::Programming

                                                                              っていうのがなかなかできなくて。 テンプレートファイルはShift_JISなんだけどソースコードやDBはUTF-8でやりたい。 でさらに最終出力は携帯用サイトなのでShift_JISでっていうレアなケースを実現したいと。 テンプレートをUTF-8にさえすればCatalyst::Plugin::Charsets::Japaneseで一発OKなんだけどね。 テンプレートをクライアントが触りたいとかってケースでUTF-8とかわからんからShift_JISでお願いとかって結構あるのでそーゆー場合のお話ですね。 まぁクライアントが触る部分だけをうまく切り離してなんとかするってのが普通のやり方なのかもしれないけどとりあえず。 ってことでまずはShift_JISで書かれたテンプレートを動的にUTF-8に変える必要があります。 それはTemplate::Provider::Encodeでできるわけです。

                                                                                テンプレートShift_JISでそれ以外UTF-8の場合 - Unknown::Programming
                                                                              • ウェブサイトにおける文字コードの割合、UTF-8が90%超え。Shift_JISやEUC-JPは?【やじうまWatch】

                                                                                  ウェブサイトにおける文字コードの割合、UTF-8が90%超え。Shift_JISやEUC-JPは?【やじうまWatch】
                                                                                • Shift_JIS系文字一覧イメージとSJIS・MS932・CP943・SJIS2004の違い - instant tools

                                                                                  日本語を扱える文字コードにはメジャーなものでUTF-8, Shift_JIS, EUC-JP, UTF-16, ISO-2022-JP(JIS)などがあります。 近年UTF-8を使う傾向が強まっていますが、今でもShift_JISは多用されています。 ところがこの「Shift_JIS」にはいくつかバリエーションがあります。 Shift_JIS系1バイト文字 Shift_JIS系の1バイト文字は、以下のようになっています。00~1F, 7Fは制御文字、20~7Eはアスキー文字です (SPACEはアスキー文字としても制御文字としても扱われることがあります)。 ここはUTF-8でもEUC-JPでもJISでも共通です。 A1~DFは半角カナが割り当てられています。半角カナを(エスケープシーケンス無しで) 1バイトで表現できるのはShift_JIS系文字コードの特徴です。 下位4ビット 012345