プレースホルダーとは
プリペアドステートメント=プレースホルダー
SQLインジェクション対策に用いる。
SQLの雛形の中に変数の場所を示す?を記載すること。
この?をプレースホルダーと呼ぶ。
Javaでの実装方法は下記。
Connection con = DriverManager(hoge,hoge,hoge);
String sql = "select name from hogeData where id = ?";
Statement st = con.preparedStatement(sql);
st.setInt(1, 1); //何番目の?に何を指定するか
ResultSet rs = st.executeQuery();
DNSレコード
Aレコード:ドメイン名またはホスト名が参照するIPアドレスの指定に使用するレコード
実際に登録するレコード例
hogehoge.co.jp A 3600 1.2.3.4
hogehoge.co.jp CNAME 3600 fugafuga.com(CNAMEは代替レコード。hogehoge.co.jpで来た時に、fugafuga.comにルーティングする)
※3600はTTL。DNSがキャッシュとして保持する時間。
MXレコード:メール。そのドメイン宛のメールの配送先メールサーバが書かれている
マルウェア
よくあるマルウェアの動作
マルウェアの動作としてよくある回答
「ファイルを開いた際のスクリーンショットを不正に外部に送信する」
マルウェアの検知方法
マルウェアを探すために「フルスキャン」「カスタムスキャン」を行います。
フルスキャンは、マルウェア対策ソフトで行う動作のことです。マルウェア定義ファイルをもとにスキャンするため、フルスキャン前に更新する必要があります。
マルウェア定義
辞書攻撃とパスワードリスト攻撃の違い
- 辞書攻撃:辞書に載っている単語から推測できるパスワードを当てにいく(推測が容易なパスワードの場合に攻撃を受ける)
- パスワードリスト攻撃:IDとパスワードのリストを外部から入手してきて、ログインを試行する攻撃(他Wehサイトで同じパスワードを使いまわしている場合に攻撃を受ける)
ディジタルフォレンジックス
ディジタルフォレンジックスとは、ログを法的証拠として残す行為のこと。
ウィルスに感染したPCは、ディスク丸ごと保管したいが、難しいので、ハードディスクやSSDをディスクイメージとして残すことが多い。
ディスクイメージとは、「DVDとかハードディスクとかの中身をそのまんま取り出してファイルの形にしたもののこと」です。
マクロ型ウィルス
ExcelやWordなどオフィスツォふとのマクロ機能を悪用して感染するタイプのマルウェア。
マクロ型マルウェアに感染すると、excel.exeやword.exeといった、オフィスソフトの実行ファイル(インストーラー)をクリックしたら悪意のあるスクリプトを自分で実行することになります。
感染経路としては、下記があります。
- 文書ファイルやメールに添付された.exeを実行
- ソーシャルエンジニアリングによるもの(信頼できる上司からの連絡を装う)
cookieの受け渡し
cookieはクライアント(ブラウザ)がリクエスト時にサーバに共有するもの!
無線LANのアクセスポイント、攻撃者の設定
Wi-FiのSSIDは誰でも簡単に設定可能。
実在するSSIDと同じ設定を行うことにより、利用者を欺き無線LANに接続させることができる。
オーセンティケータ
サプリカントとRADIUSサーバ間で認証情報の中継を行う中継装置です。
ローカルホストのIPアドレス
127.0.0.1はローカルホストを表す特別なIPアドレス。
そのため、127.0.0.1にlocalhost以外のドメインがhostファイルに定義されていたら、改ざんされた可能性が高い。
リングアグリゲーション
コンピュータとスイッチングハブ(レイヤ2スイッチ)の間,又は2台のスイッチングハブの間を接続する複数の物理回線を論理的に1本の回線に束ねる技術。
耐タンパ性
機器やシステムにおいて、その内部の機密情報データや動作などを、外部から解析や改変されることを防ぐ能力のこと。
要は、改ざんされにくい度合いのこと。
NAPT・NAT
クリプトジャッキング
高速で数学的問題を解決することで、暗号通貨を生成できます。(マイニング)
クリプトジャっキングでは、攻撃者はマルウェアなどを使い、第三者のPCで攻撃者のためにマイニングさせます。
※あとでまとめる。
Content-Disposition…ブラウザの表示上でのファイルの扱いを指定するHTTPヘッダに付与する属性です。
・ファイルをブラウザで表示する「Content-Disposition:inline」
・ダイアログを表示して別ファイルとしてダウンロードをさせる「Content-Disposition:attachment」
・ブラウザ表示ではなく、ダウンロードさせたい場合、Content-Disposition を活用します。
Content-Security-Policy…信頼できるコンテンツだけを参照するように制限をかけることができるHTTPレスポンスヘッダに付与する属性です。
意図しないコンテンツを読ませることを防ぐ設定や、混在コンテンツ (HTTPSのページの中に、HTTPでリロードする部分があるコンテンツ) を除いて表示することが可能です。
Content-Security-Policyを利用すると、”クリックジャッキング”やXSSを防ぐことができます。
X-Content-Type-Options…送信するデータの種類や形式を強制指定するHTTPレスポンスヘッダに付与する属性
・コンテンツにレスポンスヘッダとして「X-Content-Type-Options: nosniff」をつけることで、リクエストラインに含まれる文字を意図せずにHTMLとして解釈することがなくなります。
・これにより<script src>などが指定された場合にJavaScriptとして扱わなくなるため”XSS”を防ぐことができます。
X-Frame-Options…”クリックジャッキング”から防御するためのレスポンスヘッダに付与する属性です。
HTTPのレスポンスヘッダに「X-Frame-Options: DENY」と指定することで、 ブラウザにおいて、frame要素やiframe要素(外部サイトを参照するコンテンツ表示)によるページ読み込みの制限ができます。
クロスサイトリクエストフォージェリ(CSRF)
会員サイトなどでログイン状態を保持したまま「悪意のある攻撃者」が作成した罠サイトのボタンやリンクを押下することで、利用者の意図しない形でリクエストを送られてしまう攻撃です。
サーバサイドリクエストフォージェリ(SSRF)
Webアプリケーションに対し特殊なURLを含むHTTPリクエストを送信することで、攻撃する手法です。
ファイアウォールやVPNあるいはその他の種類のネットワークアクセス制御リスト(ACL)によってアプリケーションが保護されている場合であっても、SSRFによりアプリケーションに対して意図しない宛先へ細工されたリクエストを強制的に発行させることができます。
ユーザからきたリクエストを検証することで対策になります。
windowsコマンド
ipconfig/all
ネットワークアダプタごとのIPアドレス、MACアドレス、サブネットマスクなど、IP通信に関する詳細なネットワーク設定を表示します。
攻撃者は、攻撃対象端末のIPアドレスやMACアドレスなどの詳細情報を取得し、攻撃を有利に進めます。
systeminfo
コンピュータの構成や設定情報を表示するもの。
OSバージョンやプロセッサ等を確認できます。
この情報を元に、攻撃対象端末の脆弱性を確認できます。
tasklist
実行中のプロセスを表示。
攻撃端末がマルウェアの解析環境ではないかを確認できます。
net wiew
ネットワーク設定で共有設定になっているコンピュータやリソースの一覧が表示されます。
この情報をもとに、攻撃対象端末から接続可能な端末を確認できます。
top
※Linux
実行中のプロセスのCPU使用率、メモリ使用率、優先度などの情報を一覧化するものがtopコマンド
topコマンドはライブラリ関数を通じてディレクトリ/proc/プロセスID内のファイルにアクセスし、当該プロセスの状態を参照します。
ライブラリ関数は、プログラムの一部を再利用し、開発を効率化するためのコードブロックで、一般的なタスクや操作を包括的にカプセル化します。
これにより、プログラマーは同じコードを何度も書く手間を省き、バグの発生を減少させます。
ライブラリは広く利用可能で、コミュニティや組織内で共有され、多くのプログラムで利用されます。