2008-02-01から1ヶ月間の記事一覧
トランスポート層、セッション層の間で暗号化を実現するプロトコル。RFC 2246としてIETFで標準化されている。 ○IPSecと比べて設定が容易。 ×アプリケーションごとに対応が必要。 提供される機能は次の通り。 クライアント/サーバー認証 (公開鍵を使った相互…
ネットワーク層で暗号化を実現するプロトコル。IPv6では実装必須。IETFが策定。 ○それより上のすべてを透過的にセキュアにできる。 ×専用ソフトのインストールなどが必要で、クライアント/サーバー間通信で使うのは面倒。拠点間接続向き。 機能は次の通り。 …
起動中のJava(をコマンドに含む)プロセスを全部ぬっころす1ライナーです。 $ ps | grep java | awk '{ print "kill -9 "$1}' | sh psでプロセス一覧を取得。 grepでjavaを含む行を抽出。 awkでコマンドを生成。 shでコマンドを実行。 といった仕組み。見よう…
鍵と証明書のライフサイクル管理を行なうシステム。信頼できる認証局を介した第3者認証により、公開鍵の正当性を保証する。公開鍵暗号を使った 通信の暗号化 相互認証 否認防止 完全性保証 なんかを実現するための基盤として必要。覚えておくべきキーワード…
データの作成者の認証(否認防止)とデータの改ざん検知を行う仕組み。公開鍵を使ってさくっと実現できる。手順は次の通り。 送信者が、送信データのハッシュ値を計算 送信者が、ハッシュ値を自身の秘密鍵で暗号化して、送信データに追加。 送信者がデータを送…
任意のデータから、以下の要件を満たすバイト列を生成する関数。 似たデータから似たハッシュ値が生成されない あるデータとハッシュ値が等しい別のデータ(ハッシュ値の衝突(collision))が容易に生成できない ハッシュ値に偏りがない MD4,MD5(128ビットの…
暗号方式x3 以下の3つの方式がある。 秘密鍵暗号方式(共通鍵暗号方式,対称鍵暗号方式) 公開鍵暗号(非対称鍵暗号方式) ハイブリット方式 秘密鍵暗号方式(共通鍵暗号方式,対称鍵暗号方式) 暗号化と複合化に同じ鍵を使う。ブロック暗号タイプとストリーム暗号タ…
複数条件の総当たりテストをもれなく行うためのユーティリティを書いてみました。 「条件」ごとに「取り得る値」を登録しておき、 テスト実行で、「取り得る値」を順番に変えて、総当たりで取り得るすべてのパターンを生成。パターンごとに対応する評価ロジ…
知らなくてもいいような気はするけれども。 ダイナミックルーティングとスタティックルーティング ルーティングにはダイナミックルーティングとスタティックルーティングがある。 スタティックルーティング 指定されたルーティング情報に基づきルーティング…
機器A,Bがあるとして、それぞれの稼働率をa,bとすると、 条件 稼働率 AとBの両方が動いてないとダメ a*b AまたはBのどちらかが動いていればOK 1-(1-a)*(1-b) AND条件はよしとして、OR条件は両方が動いていない率を1から引く感じ。
毎回忘れるよね! 平均サービス待ち時間 = 利用率 / (1-利用率) * 平均サービス時間 利用率 リクエストが来たときにサービスが忙しい確立。一時間に3回リクエストがきて、処理に10分かかるとしたら、利用率は「3*10/60=0.5」となる。 平均サービス時間 リクエ…
RADIUS (Remote Authentication Dial In User Service) 「認証」「認可」「アカウンティング」のサーバーでの一元管理を目的とする認証プロトコル。 認証(Authentication) 利用者が誰であるかを識別すること 認可(Authorization) 認証済みの利用者に対してサ…
モノによる認証。盗難等は必然的に起こりうる。 耐タンパ性 ICカードのセキュリティレベルを示す指標。外部からの不正な読み出しや破壊に対する耐性を示す。 ICカードに対する攻撃手法 名称 手段 プロービング 針を刺して信号を読む リバースエンジニアリン…
身体的な特徴や行動面での特性など個人に固有の情報を利用して認証を行う。 ○詐称が困難。なりすましが困難。 ○識別情報の管理が容易。暗記不要。盗難等にも強い。 ×事前に特徴の入力が必要 ×特徴が似ている場合、誤認識のおそれがある。 ×特徴が体調や加齢…
Jなんとかメールを送信するRubyスクリプトです。 使い方 client = JxxxClient.new( "<接続先ホスト>", "<ユーザー名>", "<パスワード>" ) client.send_mail("<送信先>", "<タイトル>", "<本文>") これで、リリース連絡とか動作確認回覧を自動送信するわけで…
1回だけの使い切りのデータを用いて認証を行う認証方式。 ○1回だけの使い切りなので、盗聴されても安心 ○リプレイアタックも防げる ×クライアント認証で使う場合、サーバー認証の機能はないのでサーバーのなりすましは防げない。 次の3つの方式がある。 チャ…
認証 何かしらの知識をもとに、対象の正当性を確認する行為。(→認証 - Wikipedia) 認証する対象 情報セキュリティで認証する対象として出てくるのはだいたい次の3つ。 人 ユーザー認証。操作を実行する人が正当か確認する。 ハードウェア ハードウェアが正当…
はてなダイアリーでは、ブログパーツとしてGoogleガジェットが使えます。なので、任意のサイトを表示するガジェットを作れば、未対応のブログパーツも貼り付けられるようになるとのこと!(via ウノウラボ - ブログパーツ貼り付けタグのまとめ+Googleガジェッ…
機密性/完全性に関する脆弱性 脆弱性 リスク 対策 セキュリティレベルの違うサーバーが同じセグメント内に混在 公開サーバーが攻撃を受けのっとられた場合、社内サーバーが攻撃を受ける。内部犯罪の誘発。 セキュリティレベルに応じてセグメントを分割する。…
認証 脆弱性 リスク 対策 通信パケットに暗号化されないSSIDが含まれる SSIDでのユーザー認証の無効化 IEEE802.1Xなどによる認証の強化 APからのビーコン信号にSSIDが含まれる SSIDでのユーザー認証の無効化 IEEE802.1Xなどによる認証の強化/ビーコン信号の…
シェルスクリプトでJavaのラッパーを書くハメになったときによく使います。 #!/bin/sh CLASSPATH= for name in `ls lib/*.jar`; do CLASSPATH="${CLASSPATH}:$name" done echo ${CLASSPATH} 「ls」した一覧をループして追加していく仕組み。「lib」以下に「a…
脆弱性 リスク 対策 不正なDNS情報をキャッシュしてしまう(DNSキャッシュポイズニング) 不正なサーバーへの誘導→ファーミング詐欺 TSIGによるゾーン転送を受け入れるサーバーの認証 ゾーン転送してしまう 内部ネットワーク構成の漏洩 設定により、不要なゾー…
入力されたコマンドを複数のサーバーに送信して実行するスクリプトを試作しました。 Rubyのnet/sshを使って複数のサーバーに並列でつなぎ、 入力されたコマンドをすべてのサーバーに送付/実行し、結果を順番に出力。 接続先ホストやユーザー名はyamlファイル…
メールの送信(SMTP)と受信(POP)プロトコルの脆弱性と対策まとめ。 メール送信プロトコル(SMTP)の脆弱性 脆弱性 リスク 対策 メールの投稿と中継の仕組みが同じ パケットフィルタリングによる第三者中継の抑制が困難 Outbound Port 25 Blocking(外側へのSMTP…
悪意を持つプログラム。以下の機能を持つ。 潜伏 伝染 発病 種別 説明 ウイルス 寄主(ファイル)を必要とするモノ。OSのブートセクタやexe等のプログラムに感染し、実行時に悪事を働く。また、アプリケーションのマクロを利用しファイルに感染するマクロウイ…
Cookie等に保存された正しい認証情報を使って、正規ユーザーに任意のコマンドを実行させる。 流れ 正規ユーザーが認証→認証情報がクッキーに保存される。 攻撃者がコマンドを実行するURLを正規ユーザーに送る。 正規ユーザーがURLをクリック。→クッキーの認…
問題を持つWebサイトを利用し、ターゲットのブラウザで任意のスクリプトを実行させる。 クッキー情報の奪取 Webサイトの改ざん 等が可能。 流れ ユーザが悪意あるWebサイト(悪意のあるスクリプトを含むURLがある)を閲覧 ユーザーがURLのリンクをクリック。→…
入力値をそのままプログラムとして実行するような脆弱性のあるプログラムを悪用し、悪意のあるパラメータを渡すことで、プログラムを不正に実行する。 対策 危険な関数の利用を避ける。 パラメータのチェック/サニタイズ WAFでの入力値チェック プログラムに…
入力値をそのままSQL文の一部に組み込むような脆弱性のあるプログラムを悪用し、悪意のあるパラメータを渡すことで、データベースに不正アクセスする。 対策 ストアドプロシージャの利用。 パラメータのサニタイズ WAFでの入力値チェック プログラムに与える…
脆弱性のあるプログラムを悪意のあるパラメータで起動し、任意のコマンドを実行させる。 対策 ソフトウェア利用者 最新のセキュリティパッチを適用する。 スタック領域でのプログラム実行をOSの機能で禁止する。 プログラム実行を禁止するOSの機能を使う。(…