【セキュリティ】クロス・サイト・スクリプティング(XSS / Cross Site Scripting)
■ クロスサイトスクリプティングとは?クロスサイトスクリプティング(XSS / CSS:Cross Site Scripting)とは... * ページ内に悪意のスクリプトやタグが埋め込まるセキュリティホールの一種。 ■ 問題 * スクリプトを自由に実行できてしまうこと。 ■ 具体的な被害 * 具体的には、以下のような被害が起こる可能性がある。 + クッキーを盗まれる + ファイルの破壊 ■ 対策...
View Article【セキュリティ】クロス・サイト・リクエスト・フォージェリ(CSRF/ Cross site request forgeries)
■ クロス・サイト・リクエスト・フォージェリとは?クロス・サイト・リクエスト・フォージェリ(Cross site request forgeries; CSRF, forgery: 偽造)とは... * サイトに、スクリプトや自動転送によって、 閲覧者に意図せず別のサイトで、掲示板への書き込みなどを行わせる攻撃手法 ■ 具体的な被害 * 具体的には、以下のような被害が起こる可能性がある。 +...
View Article【セキュリティ】パス・ディレクトリ操作関連
【1】パス トラバーサル(パスの乗り越え)パス トラバーサル(パスの乗り越え) / ディレクトリ トラバーサル(Directory Traversal)とは... * 本来想定したファイルパスを遡って(Traversal, Traversal:横切る)、自由にファイルを読み書きされてしまう攻撃 * 上位ディレクトリへの移動コマンド「../」などを直接指定することで...
View Article【セキュリティ】セッション操作関連
【1】セッションハイジャック(Session Hijack)セッションハイジャック(Session Hijack)とは... * セッションIDやセッション・クッキーを盗むことにより、 別のユーザーがなりすまして、インターネットに不正アクセスする手口。 【例】 * 以下に書かれているように、他のユーザのセッションIDを使って、そのユーザになりすまし、システムにアクセスする...
View Article【セキュリティ】SQLインジェクション(SQL Injection)
■ SQLインジェクションとは?SQLインジェクション(SQL Injection, Injection:混入)とは... * SQL命令に不正なパラメータを引き渡すことで、 開発者が意図していなかったSQLが生成・実行できてしまうこと ■ サンプル... = "SELECT * FROM userTable WHERE userID = '" + userID + "' AND password...
View Article【セキュリティ】IP スプーフィング(IP Spoofing)
■ IP スプーフィングとは?IP スプーフィング(IP Spoofing, Spoof : だます、Spoofing:なりすまし)とは... * 攻撃元の IP アドレスを隠ぺいするために、偽の送信元IPアドレスを持ったパケットを作成し送ること ■ 問題 * 攻撃元がわからなくなるため、 「ポートスキャン」や「DoS攻撃(Denial Of...
View Article【SQL】SQLを書くコツ
はじめに * 書籍やサイトなどで、気になった事をメモる。 【1】SQL文を考える順番:FROM句から書く以下の順番で考える。 1) FROM 2) WHERE 3) GROUP BY 4) HAVING 5) SELECT 6) ORDER BY 【2】SQLの基本原理:SQLを集合指向と捉える * C言語/Javaなどのプログラム言語は「手続き型」に対して、...
View Article【セキュリティ】DNSキャッシュポイズニング(DNS cache poisoning)
■ 前提知識:DNSとは * 以下の関連記事を参照のこと http://blogs.yahoo.co.jp/dk521123/34548384.html * ここで、重要な点は、上記の関連記事の「DNSへの問い合わせシーケンス」の以下の記述。 =>「 [7] DNSサーバは、上位DNSサーバから得た回答をクライアントに回答し、 自身のキャッシュに回答情報を保存する。」 ■...
View Article【ASP.NET MVC】【VB.NET】【iTextSharp】ASP.NET MVC で、 PDF を出力する ~入門編~
前提 * iTextSharp をインストールする 準備:環境設定http://blogs.yahoo.co.jp/dk521123/35596847.htmlで行ったNuGetでインストールする [1] Visual Studio で [ツール]-[NuGetパッケージ マネージャー]-[パッケージ マネージャー コンソール]を選択 [2] 以下のコマンドを入力する Install-Package...
View Article【ASP.NET MVC】ASP.NET MVCでの開発時 におけるセキュリティ注意事項
■ ビュー1) Html.Raw()の使用以下のケースに限る。 * 文字列がエンコード済みである * 安全な文字列であることが予めわかっている => ユーザからの入力値、データベースなどから取得した値は、 クロス・サイト・スクリプティング対策として、@Xxxx で出力する事 * 「クロス・サイト・スクリプティング」は以下の関連記事を参照のこと...
View Article【VB】C#との差異 (条件分岐 - Select-case文(C#のSwitch-case) 編)
■ Select-case文(C#のSwitch-case)構文 * 「break」や条件の後の「:」は不要。 Select Case 【比較対象】 Case 【条件1】 【処理1】 Case 【条件2】 【処理2】 Case Else 【処理3】 End Select 条件文 * 条件には以下のように指定できる。詳細は、以下のサイト参照のこと。...
View Article【CSS】DIVタブ(ブロック)からはみだした場合の対処
■ 対処策1) overflowで、領域内に収まりきらない場合の対処を指定する 2) flowで、ボックスを左/右に寄せて、逆側にテキストなどを回り込ませる 3) word-break:break-allで自動折り返しを行う 参考文献 * 「word-break:break-allで自動折り返しを行う」...
View Article【JS】【jQuery】【HTML】【CSS】活性 / 非活性の切り替え
■ 方法【1】HTML/JavaScriptを使用する => disabled 属性 をJavaScriptで動的に、切り替える // 非活性 document.getElementById("btnRed").disabled = "true"; // 活性 document.getElementById("btnRed").disabled = ""; 【2】jQueryを使用する[1]...
View Article【VB】LINQ ~ GroupBy ~
参考文献https://msdn.microsoft.com/ja-jp/library/bb531412.aspxhttp://vb.xn--netde-rm4dun6em173aog4b.com/302.htmhttp://jyuch.hatenablog.com/entry/2015/02/06/222306https://karuakun.wordpress.com/2014/01/10/v...
View Article【VB】LINQ ~ Any編 ~
はじめに * 存在チェックに役立つ、Anyを紹介。 サンプル' データテーブルを作る Dim dt As New DataTable("testTable") With dt.Columns .Add("ID", GetType(Integer)) .Add("Name", GetType(String)) .Add("Age", GetType(Integer)) End With For i...
View Article【VB】LINQ ~ 基本編 ~
Linqの種類1) クエリ構文(query syntax) 2) メソッド構文(method syntax) 違いは... 見た方が早い クエリ式 Dim query = From x In values Select x.Id メソッド形式 Dim query = values.Select(Function(x) => x.Id)...
View Article【SQL】相関サブクエリ / 自己相関サブクエリ
■はじめにhttp://gihyo.jp/dev/serial/01/sql_academy2/000901などで、 「SQLでループ→ 相関サブクエリ」とあるので、 相関サブクエリについて、学ぶ。 ■相関サブクエリ / 自己相関サブクエリ とは?http://blogs.yahoo.co.jp/dk521123/35657803.htmlで、「サブクエリ」を扱ったが... *...
View Article【VB】【ASP.NET MVC】【Mock】ASP.NET MVCで、Moq(モッキュ)を使う
環境設定 * Moq をインストールする http://blogs.yahoo.co.jp/dk521123/35596847.htmlで行ったNuGetでインストールする [1] Visual Studio で [ツール]-[NuGetパッケージ マネージャー]-[パッケージ マネージャー コンソール]を選択 [2] 以下のコマンドを入力する Install-Package Moq...
View Article【VB】LINQ ~ Where編 ~
サンプル'データ配列 Dim values As New List(Of Company) From { New Company With {.Id = "X001", .CountryCode = "JP", .Type = "Car", .Name = "Toyota", .Point = 34}, New Company With {.Id = "X002", .CountryCode =...
View Article【jQuery】【JavaScript】jQuery / JavaScript でのサニタイジング(エスケープ)
■はじめに * クロスサイト・スクリプティング(XSS)の一環として、 jQuery / JavaScript でのサニタイジング(エスケープ)を調べてみた 補足:用語について * クロスサイト・スクリプティング/サニタイジング(Sanitizing)について、以下の関連記事を参照のこと。...
View Article