趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • 解析ツールいろいろ

    投稿日 2014年 5月 20日 コメントはありません

    バッファオーバーフローを突く例で紹介したページで使われていたツールは何だろう、という疑問からスタート。ページの内容からコードの分岐状況を解析ツールがあるのではないかと思ったので。
    で、件のページの「TOOLS」には、IDA Proという文字が。

    そこから調べたことをメモメモ。

    • リバースエンジニアリングのスタンダード「IDA Pro」
      @ITの記事で大体雰囲気がわかった
    • Hex-Rays
      本家本元はここのようだ。Ver5.0は条件付きで無償で使えそう。
    • BackTrack5収録ツールリスト
      BackTrackには収録はされてないが、インストーラを起動するコマンドは入っているようだ。

    ということで試してみるにはBackTrackをインストールして、さらにIDA Pro Freeをインストールしてみるのが良さげな感じ。

    他にもイメージファイルの中からファイルシステムのイメージなんかを抜き出すBinwalkなんかも役に立つ感じがする。


  • Linux from Scratch

    投稿日 2013年 3月 7日 コメントはありません

    ちょっと最近興味をもっているのですが、「Linux from Scratch」というものがあります。略して「LFS」と呼ばれるようなのですが、文字通りゼロからLinux環境を構築していくもので、Linuxシステムがどのように動いているのか仕掛けがわかりそうです。できれば試してみたいと思うのですが、なかなか時間がないので情報源だけ。

    • linux from scratch
      本家本元のサイト。クロス版?のCLFSもここにリンクがあります。
      作業をまとめたものが「LFS BOOK」というもので、ftpなどで容易に取得できる。
    • LFSブック日本語版
      文字通り、LFS BOOKの日本語版。SourceForgeがホストしている。
      ブック自体はプロジェクトページから取得できる。

     


  • カスタムカーネル作成の続き

    投稿日 2012年 12月 18日 コメントはありません

    しばらく前に作ったカスタムカーネルを改めて作り直してみました。前回は遅いUSB外付け1.8inchHDDで構築したのですが、今回はもっと速い外付けHDDを使っています。(シーケンシャルアクセスで4倍くらい出てます)
    設定は前回同様、SATA関連のものをすべて外しただけです。
    (自分用のメモとして、 .configファイルをアップロードしておきます。→config.tar.gz

    前回の手順でカスタムカーネルでブートするようになったのですが、起動時のカーネルのメッセージが何もでないので何をやっているのかさっぱり分からない状態です。
    これはGRUBがなにかおかしいということで調べてみると、GRUB2ではデフォルトでは起動時のコンソール画面表示がOFFになっているとのことです。
    これをONにするには、/etc/default/grub を編集します。

    # If you change this file, run 'update-grub' afterwards to update
    # /boot/grub/grub.cfg.
    # For full documentation of the options in this file, see:
    #   info -f grub -n 'Simple configuration'
    
    GRUB_DEFAULT=0
    #GRUB_HIDDEN_TIMEOUT=0
    #GRUB_HIDDEN_TIMEOUT_QUIET=true
    GRUB_TIMEOUT=10
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    GRUB_CMDLINE_LINUX=" vga=788"
    
    # Uncomment to enable BadRAM filtering, modify to suit your needs
    # This works with Linux (no patch required) and with any kernel that obtains
    # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
    #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
    
    # Uncomment to disable graphical terminal (grub-pc only)
    #GRUB_TERMINAL=console
    
    # The resolution used on graphical terminal
    # note that you can use only modes which your graphic card supports via VBE
    # you can see them in real GRUB with the command `vbeinfo'
    GRUB_GFXMODE=800x600
    
    # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
    #GRUB_DISABLE_LINUX_UUID=true
    
    # Uncomment to disable generation of recovery mode menu entries
    #GRUB_DISABLE_RECOVERY="true"
    
    # Uncomment to get a beep at grub start
    #GRUB_INIT_TUNE="480 440 1"

    7行目、8行目のGRUB_HIDDEN_TIMEOUT関連の2行をコメントアウトした後、最後に「$ sudo update-grub」を実行します。

    他の設定項目もこのファイルの編集で可能なようなのですが、簡単に済ますにはSynapticパッケージマネージャで「startupmanager」を検索してインストールすればGUIで設定できるようです。インストールすると、「システム管理」の下に「StartUp-Manager」が出てきますので、これで設定します。

    参考:http://viva-ubuntu.com/tag/grub2

    設定後、RemasterSysでインストールDVD用のISOファイルを抽出しました。最新版のRemasterSysをインストールするには、

    $ su -
    # wget -O - http://www.remastersys.com/ubuntu/remastersys.gpg.key | apt-key add -

    とした後、/etc/apt/sources.listにLinuxMint13の場合には

    #Remastersys Precise
    deb http://www.remastersys.com/ubuntu precise main

    を書き足して、

    $ sudo apt-get update
    $ sudo apt-get install remastersys
    $ sudo remastersys dist MintNoSATA.iso

    としてISOファイルを抽出しました。なお、apt-get install で remastersys-gui を追加するとGUI版がインストールされるようです。(自分はGUI版の存在に気づく前にコマンドラインでマスター作っちゃいました)
    remastersysの設定ファイルは /etc/remastersys.conf にあって、上記の手順でのライブCDのログインIDは「custom」、パスワードは無しになります。

    USBメモリにはISOファイルを書き込んで作ったライブDVDでインストールすることができます。
    (USBメモリは遅いので、USBメモリ上でのカーネル再構築は大変です・・・)

    <追伸>
    できたISOファイルは2.2GBと巨大になりました。よく考えたらカーネルインストールした後はソースを消してからライブCDを作るべきだったかも。


  • VMware上でbasix-1.0を動かしてみた

    投稿日 2012年 12月 16日 コメントはありません

    いろいろ環境をいじっているのですが、ちょっと怪しい作業は極力仮想マシン上で行うようにしています。これまでは仮想マシン上でUbuntu10.04LTSを動かしていたのですが、こちらもサポート期限が切れています。そこで、代わりのものを考えているのですが、できれば軽い方がいい、ということで、いろいろ試してみることにしました。

    そんな中で、LiveCDの部屋でbasix-1.0を見つけたので、試してみています。元は、UbuntuのLXDE版のlxubuntuだったようなのですが、それが改称してbasix-1.0になったようです。

    続きを読む »


  • ISOイメージからブータブルUSBメモリを作ってみる

    投稿日 2012年 12月 15日 コメントはありません

    NM70I-847のリブート問題は、結局CentOS6.3/FreeBSD9.0なら安定動作、LinuxMint13/14/Ubuntu12.10は不安定、という状況になっています。現状はCentOS6.3で運用していますが、元々の狙いは「省電力で静かでつけっぱなしにできるクライアントLinuxデスクトップ」だったので、狙いとはちょっと外れています。CentOS6.3上のLinuxMint14も安定はしていますが、CPU負荷が増えるためかCPUファンが回る頻度が増えています。(そうでなくてもNM70Iはケースファンが全力で回るので、うるさかったりしますが、そっちは自作FANコントローラを入れることで処置するつもりです。)

    ここで気づいたのは、CentOS6.3はLinuxのカーネルのバージョンが2.6.32と古いことです。LinuxMint13は3.2.0、Mint14は3.5.0ベースで、このあたりに何かヒントがあるような気がします。それで、最新カーネルはどうだっ!と思って、試そうとしたらあえなく挫折・・・したわけですが・・・。

    さて、OSもインストール済みなので、安易にOS入れ替えもしたくないけど、解決策も探りたい、というわけで、いろんなディストリビューションを試してみたくなりました。

    かといって、DVDにひたすら焼くのも面倒くさい、ということで、LiveDVDのISOイメージをUSBメモリに書き込んでブータブルなLive USBメモリを作る UNetbootin を試してみました。環境はLinuxMint13 64bitです。

    続きを読む »


  • gNewSenseを試してみる

    投稿日 2011年 7月 22日 コメントはありません

    たまたまFSF(Free Software Fundation)のことを調べていたら、gNewSenseというUbuntuベースのFSF公式支援のディストリビューションがあることを知りました。もちろんLiveCDがあるようなので、ちょっと試してみることにします。

    Wikipediaによると、最新版は2.3(実際にダウンロードできるものも2.3)で2009年リリース、ubuntu8.04がベースのようです。ちょっと古いのですが、試してみようと思ったきっかけは、パーソナライズ版の作成ができるBuilderというツールに関する記述があったからです。

    で、CD-Rにイメージを焼いて起動してみると・・・・ちょっとデザインが違うだけで、まんまUbuntuでした・・・。(当たり前か・・・)