タグ

ブックマーク / ruffnex.oc.to (12)

  • http://ruffnex.oc.to/kenji/text/kernel.txt

    yuiseki
    yuiseki 2014/05/10
  • 暗号プログラミング Part2

    はじめに かの有名なP2Pソフト「Winny」の通信内容は、TCP接続確立後の初期パケットの「先頭から3バイト目以降の4バイト」を鍵としたRC4で暗号化されています。しかし、来、暗号通信を行う場合、ネットワーク上に流れるパケットデータの中に、そのままの状態の共通鍵は入れません。このような実装だと、通信内容を確認しただけで暗号を解読される恐れがあります。Winnyはそういった意味で、通信内容の暗号化に関しては、あまり労力を割かなかったことがうかがえます。 しかし、共通鍵暗号を使用する以上、通信相手と同じ鍵を共有しなければなりません。WinnyはRC4の鍵を乱数で生成しているため、その鍵をどうにかして相手に送る必要があり、そのためにはどうしても鍵を送信しなければなりません。ただ、鍵を送信するということは、通信データを傍受されることで暗号が解読されてしまう危険性を伴います。 これは、不特定多数

  • 暗号プログラミング Part1

    はじめに インターネットが普及し、様々な情報がやり取りされる現在のネットワーク状況において、ここ数年、特に注目されている技術に暗号があります。例えば、SSL(Secure Sockets Layer)はHTTPにて広く使われている暗号通信方式であり、私たちは普段、URLの先頭が「https」となっているWebサイトをよく見かけます。また、かの有名なP2P(Peer to Peer)ソフトであるWinnyも、Crack対策のため、通信内容を暗号化して送受信していました。 今後、ネットワークと暗号はますます身近になり、またその研究も進むことでしょう。しかし、暗号はそもそもコンピュータやネットワークとはまったく別の学問であり、その歴史も深く、専門の学者によって日々研究が進められているものです。暗号に対する安全性や理論の証明、そしてネットワーク通信にどのように応用できるかなど、暗号と一言にいっても

  • KENJI

    更新履歴 DNS拡張EDNS0の解析 Linuxカーネルをハッキングしてみよう Windowsシステムプログラミング Part 3 64ビット環境でのリバースエンジニアリング Windowsシステムプログラミング Part2 Windowsシステムプログラミング Part1 Contents インフォメーション 「TCP/IPの教科書」サポートページ 「アセンブリ言語の教科書」サポートページ 「ハッカー・プログラミング大全 攻撃編」サポートページ ブログ(はてな) BBS メール このサイトについて テキスト 暗号 詳解 RSA暗号化アルゴリズム 詳解 DES暗号化アルゴリズム crypt() アルゴリズム解析 MD5 メッセージダイジェストアルゴリズム crypt() アルゴリズム解析 (MD5バージョン) TCP/IP IP TCP UDP Header Format(IPv4) Ch

  • http://ruffnex.oc.to/

  • 魁・鬼畜塾

    yuiseki
    yuiseki 2011/02/08
  • リバースエンジニアリング

    はじめに 最初に断っておきますが、私はKrackerではありませんし、またリバースエンジニアリングについてさほど詳しいわけでもありません。そんな人が「リバースエンジニアリング」などと銘打って文章を書くこと自体がそもそもおかしいですが、今回は、私がリバースエンジニアリングについていろいろと調べた結果をテキストとしてまとめてみようということでこの文章を書き上げました。よって、この文章は私がここ1ヶ月くらいで学んだ過程を書き綴っています。ただ、まとめたといっても、デバッガの使い方といった初歩の部分から書いているわけではないので、少なくともアセンブリ言語を理解していることが前提となります。また場合によっては、WindowsやDLLの仕組み、そして暗号アルゴリズムに関してもある程度の知識が必要かもしれません。 実験を行った私の環境はWinXP、コンパイラはVC++.NET、デバッガはOllyDbgで

    yuiseki
    yuiseki 2011/02/05
  • アセンブラとPEフォーマットとマシン語の注入

    はじめに 私は以前、任意のプログラムを他プロセスへ注入する「DLLインジェクション」のテクニックを紹介しました。このテクニックについての詳細は「常駐プログラム隠蔽テクニック」を参照してください。 さて、この「DLLインジェクション」は、任意のプログラムを現在実行中の他プロセスへ注入し、他プロセスの一部としてこちら側が用意したプログラムを実行させるテクニックでした。これはとても面白く、任意のプロセスの情報を取得するための手法としてはSetWindowsHookExと同じくらい強力であり、かつ、実行したいプロセスの隠蔽という目的においても利用できるものでした。しかし、これはあくまでも実行中のプロセスへ注入したわけであり、EXEファイル自体を書き換えたわけではありません。よって、例えば、そのプロセスが何かしらの理由で強制終了し、再度起動された場合、もう一度、任意のプログラムの注入処理をほどこさな

    yuiseki
    yuiseki 2011/02/05
  • 常駐プログラム隠蔽テクニック

    タスクマネージャーに任意のプログラムを列挙されないようにする方法はないだろうか? Windowsにはプロセスという概念がありアプリケーションはそれぞれプロセス単位で動作しています。プロセスは「Ctr+Alt+Del」で起動されるタスクマネージャーで確認でき、これを見ると現時点で起動しているプロセスのすべてを監視することができます。 さて、Windows上で実行されているアプリケーションはすべてOSの管理下に置かれているわけであり、よってすべてのプロセスをOSは管理していることになります。つまりは「常駐させたいプログラムをタスクマネージャーから消し去ることは難しいのでは?」と思われるかもしれません。ということで、今回は常駐プログラム隠蔽テクニックと題してお送りしたいと思います。 私が使用したOSはWindowsXP、コンパイラはVC++.NETです。前提となる知識は、Win32API、DLL

    yuiseki
    yuiseki 2011/02/05
  • http://ruffnex.oc.to/kenji/text/bootsect.txt

    Linuxを読んでみよう 〜 bootsect.S篇 〜 ■0x01.) はじめに Linuxユーザーならば、一度はLinuxのソースコードを解読してみようと考え ます(考えますよね^^;)。LinuxのソースコードはThe Linux Kernel Archive s(http://kernel.org/)からダウンロードすることができますので、「よし 早速ダウンロードして読んでみよう」と意気込んでみたりします。しかし、い ざtarボールを展開して、ディレクトリを覗いてみると、ソースコードは果て しなく膨大な量であることを実感します。ダウンロードしたは良いが、いった いどこから読めばよいのか、どのファイルが何をしているのか、そもそもどこ から始まるのか、と疑問ばかりが膨らんでしまい、結局読む気が失せてしまい ます。 当たり前のことですが、LinuxはOSです。通常のアプリケーションならば

    yuiseki
    yuiseki 2011/02/05
  • DPSSレーザー

    レーザーダイオードにより励起される固体レーザーの事を総称してDPSSレーザーと呼びます。まず高出力の半導体レーザーによりYAGやYVO4などの結晶を励起しレーザー発振を起こします。赤外域の出力ではこのままレーザー出力としていますが、この赤外線を非線形光学結晶と呼ばれる物に通す事により半分又は1/3波長に倍周することができます。これによりグリーンからブルーのレーザー発振が可能となり水冷イオンレーザーに匹敵する出力を誇り、なおかつ、非常に小型化と言う特徴を持っています。 中国製のDPSSレーザーモジュールです。コヒレント社製の物に比べたら非常に低価格な物です。しかし、性能はコヒレント社の物の方が圧倒的に優れます。このレーザーではビーム直径が1mm程度あるのに対しコヒレント社の315m-100ではビーム直径は何と0.2mmです。エネルギー密度は比較になりません。  そして、このレーザーの寿命は公

    yuiseki
    yuiseki 2008/10/24
  • http://ruffnex.oc.to/100/

    yuiseki
    yuiseki 2007/08/03
  • 1