タグ

ブックマーク / 7shi.hateblo.jp (5)

  • ELFの動的リンク(1) - 七誌の開発日記

    これから2回に渡って、ELFの動的リンクについて見ていきます。 ※ 試験的に文中の図はインラインSVGで描いています。(ソース) ELFファイルの中はセクションとセグメントで二重に分割されています。属性が共通するセクションをグループ化したものがセグメントです。セクションはリンカ、セグメントはローダで処理することを想定したブロックです。 ELFファイルの構造 ファイルの先頭にELFヘッダがあり、その直後にセグメントの構造を示したプログラムヘッダがあります。 readelfコマンドでプログラムヘッダを確認します。ここで分析するバイナリは以下のサンプルプログラムの stest/a.out です。 https://bitbucket.org/7shi/elf-dyn ELFファイル ELF header program headers .interp .hash .dynsym .dynstr .

    ELFの動的リンク(1) - 七誌の開発日記
  • PEの.idataをアセンブラで考える - 七誌の開発日記

    PEの.idataをアセンブリ言語で記述しながら説明します。 PEからDLLを参照するには.idataセクションにDLL名とシンボル名を記述します。実行時にWindowsのローダが.idataを見てLoadLibraryとGetProcAddressに相当する処理を行い、取得したアドレスを.idataに書き込みます。アドレスが書き込まれる領域はサンクと呼ばれており、あらかじめ.idataに用意しておきます。プログラムはサンクに書き込まれたアドレスをcallすることでDLL内の関数を呼べます。 例: DLLシンボルサンクa.dllfoobarb.dllhogefuga これがどのようにバイナリに落とされているかを見ていきます。 構造 .idataの大まかな構造は以下の通りです。 名称 型 対応 IDT (Import Directory Table) IMAGE_IMPORT_DESCRIP

    PEの.idataをアセンブラで考える - 七誌の開発日記
  • アクティブパターンをどう捉えるか - 七誌の開発日記

    F# Advent Calendar 2012 第16日目の参加記事です。 昨日 @kyon_mmさん SpecFlowについて 明日 @linerlockさん F#製のビルドツール, FAKEで遊ぶ 今年のF# Advent Calendarは実用がテーマです。私はアクティブパターンをなかなか実用できないでいましたが、ようやく端緒がつかめたという話を書きます。その前に実用関連として、勉強会でF#を使おうとしたときの話を書きます。 勉強会でF#を使おうとしたときの話 私は以前から、中高生の数学学習に数式処理プログラムの自作が応用できないかということに興味を持っていました。Expert F# 2.0の第12章に数式処理についての言及があったため、それをテーマとした勉強会を開催しました。 2012.09.08(土): F#数式処理入門 当初の想定では数式処理が目的で、F#の学習が目的ではなかっ

    アクティブパターンをどう捉えるか - 七誌の開発日記
  • マーク&スイープ勉強会 完了報告 - 七誌の開発日記

    id:n7shi:20111113で告知したマーク&スイープ勉強会が無事に完了しました。ご参加の皆様、お疲れ様でした。 マーク&スイープ勉強会 View more presentations from n 7shi pptx版(同内容): msgcben.pptx 配布資料: msgcben.pdf, msgcben.docx サンプル: msgcben.zip Togetter まとめ: http://togetter.com/li/226544 また、無茶振りにも関わらずセッションをお引き受けいただいたid:atsushienoさん、ありがとうございました。 以下、参加者の方々のレポートです。私の気付いた範囲で追加していますが、漏れがあれば教えてください。 id:nagoya313:20111211:1323598519

    マーク&スイープ勉強会 完了報告 - 七誌の開発日記
  • 第3回 PE勉強会 完了報告 - 七誌の開発日記

    id:n7shi:20110227で告知した第3回 PE勉強会が無事に完了しました。ご参加の皆様、お疲れ様でした。 配布資料: peben03.pdf(全ページ), peben03-1.docx(1ページ), peben03-2.xlsx(2ページ以降) サンプル: https://bitbucket.org/7shi/peben/src/902f634fb33b/03/ 参加者のtwitterリスト: http://twitter.com/7shi/peben (私が把握している範囲内、他の回も含む) Togetter まとめ: http://togetter.com/li/125681 第1回目は私がしゃべり過ぎ、第2回目はバイナリと構造体の対応関係が説明不足、との反省を踏まえました。まず資料でバイナリと構造体の関係を明示しました。その後の説明は最小限にして、不明な点はコードを書いて確

    第3回 PE勉強会 完了報告 - 七誌の開発日記
  • 1