タイガーチームセキュリティレポート Buffer Overflow脆弱性の動的パッチの方法 - Part 3 今回は前回紹介したSystemTapを使ってbuffer overflow脆弱性にパッチを当てる方法を実装してみます。 -基本の考え方- buffer overflowに対する攻撃は、対象となる関数の実行中にその関数の戻りアドレスを書き換えることでプログラムの実行フローを外部から変更するものなので関数の出入り口で戻りアドレスをチェックし、戻りアドレスが書き換えられていた場合にエラーとして処理すれば攻撃の成立をかなり難しくすることができます。 同様の考え方で実装されたSSP(Stack Smashing Protection)はすでに存在しており、あとで紹介するようにgcc等のコンパイラの機能として利用することができます。しかし今回は実行中のプログラムに動的にパッチをあてる方法を実装
第1回 知られざるセキュリティフレームワーク「LSM」の役割 Linuxカーネルには、バージョン2.6から「Linux Security Module」(LSM)というセキュリティフレームワークが導入されています。この連載ではLSMの仕組みを紹介するとともに、これを活用してオリジナルのセキュリティモジュールを作り上げていきます(編集部) 村上 純一 株式会社フォティーンフォティ技術研究所 研究開発部 αUnit シニア・リサーチエンジニア 2008/3/18 ITインフラを語る上でセキュリティは欠かせない要素です。Linuxにも、セキュリティを強化する「LSM」(Linux Security Module)という枠組みが用意されています。 実はこのLSMは、これまで何かと物議を醸してきました。本稿ではSELinuxやそのほかのセキュリティモジュールの紹介に始まり、Linuxカーネルに実装さ
kprobは、実行カーネル内を再コンパイルすることなく、任意のアドレスにブレイクを設定できる。そしてそのブレイクした時のデバック処理を記述することで、カーネルデバッグを行うというもの。 以下のstatic struct kprobe kpにブレイクする位置(シンボル又はアドレスの指定およびオフセット)、ブレイクした時の処理、ブレイクしたコードを実行した後の処理、必要なら、上記の処理で例外が発生した時の処理を記述して、register_kprobe()をコールするだけである。 struct kprobe { /* location of the probe point */ kprobe_opcode_t *addr; /* Allow user to indicate symbol name of the probe point */ const char *symbol_name; /*
FireMobileSimulatorも含めたFirefoxアドオンの今後の開発の可能性を探る為に、Firefoxの内部動作をもう少し詳しく知りたいなあと思ってたんですが、ソースを読んでみても、細かいところは分かっても、全体を通してどう動いているかがどうにも分かりません。。 しかし、Firefoxを含む各種MozillaプロダクトにはNSPRという便利なモジュールが組み込まれていて、再ビルドなどを行うことなしにデバッグログをファイルに出力させることができるということを最近知りました。 このログを追えば、そのプロダクトのだいたいの動きを知ることができます。 NSPRモジュールのログ出力方法 NSPRモジュールの使い方は簡単で、Windowsの環境変数でNSPR_LOG_MODULESとNSPR_LOG_FILEを指定してFirefoxを起動するだけです。 それぞれの環境変数の説明は以下の通り
メモリーリーク Xcode4でメモリーリークをチェックするには、実行中の各種状態を可視化できるinstrumentsというツールのメモリリーク画面で確認することができます。(instrumentを起動してみるにはProduct>Profileを選択してください) Xcodeの左上Runボタンを長押しすると"Run","Test","Profile","Analyze"のうちどのモードで実行するか選択できますので、"Profile"を選択します。(実行ボタンがプロファイルのアイコンに変わります。) 次に、Product>Edit Scheme>Profile ObjectiveC>Info>Build Configuration:ここでは"Debug"にしておきます Executable:実行ファイル(デフォルトでは自動選択されている) Instrument:実行時に起動したいinstrum
.emacs分割のすゝめ | tech.kayac.com - KAYAC engineers’ blog で紹介されている init-loader.el をそのまま使うと、ログを見ても、どのファイルに対するロード時のエラーかがわからない。 init-loader-re-load() を次のように変更すれば、エラーファイルを特定できる。(追記:変更した場合は、古い.elc ファイルの削除を忘れてはいけません) (defun init-loader-re-load (re dir &optional sort) (let ((load-path (cons dir load-path))) (dolist (el (init-loader--re-load-files re dir sort)) (condition-case e (let ((time (car (benchmark-ru
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
logging — Logging facility for Python¶ Source code: Lib/logging/__init__.py This module defines functions and classes which implement a flexible event logging system for applications and libraries. The key benefit of having the logging API provided by a standard library module is that all Python modules can participate in logging, so your application log can include your own messages integrated wi
DebugBarの動作例 - DebugBarサイトから抜粋 Webアプリケーション開発に必須のツールといえばFirefoxとそのエクステンションFirebugだ。その機能は驚くべきものがあり、もはやFirebugなくてはWebアプリケーション開発はできないと考えるデベロッパやデザイナは少なくない。 エクステンションが豊富に用意されているFirefoxだが、ほかのWebブラウザでも似たような機能を提供するものがある。ここでは先日新しいバージョンが公開されたDebugBarを紹介したい。DebugBarはIEを対象として開発されたツールで、Firebugの機能をIEでも実現することを目指している。 今回公開されたバージョン(5.0 beta 1)では新しくDOMタブが追加されている。DOMツリー上のノードが選択されると、Source/Style/Comp.Style/Layout/Attrs
keypress,keyup,keydownイベントの発生パターンを確認するためのページです。 確認したいイベントをチェックし、テキストボックスに入力してください。 →Blogへ戻る keypress keyup keydown typekeyCodealtKeyctrlKeyshiftKeyvalue
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く