2010年10月5日火曜日

ettercap NG

1.前準備

BackTrack 4 final、BackTrack 4 R1には ettercap NG が最初からインストールされているが、HTTPS をサポートするには openssl をインストールする必要がある。

$ apt-get install openssl

次に、/etc/etter.conf  の168と167行の #redir_ の先頭 # を削除する。
$ gedit /etc/etter.conf
# if you use iptables:
redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"
redir_command_off = "iptables -t nat -D PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"

2.操作手順
  1. ettercap起動
  2. sniff --> unified sniffing
  3. Network interface: wlan0 (Etherの場合 eth0又はeth1)
  4. Hosts --> scan for hosts
  5. Hosts --> Hosts List
  6. Add To target 1,Add To target 2 (ターゲットPC IPアドレスとルータ IPアドレスを選ぶ)
  7. Mitm --> Arp poisoning > Sniff remote connections > check (Arp poisoning 開始)
  8. Targets --> Current Targets
  9. View --> statistics
  10. Start --> Start sniffing (Arp poisoning中はそのまま)
    ターゲットPCでgoogleにログインすると、sniffing画面上にIDとPassが表示される。
  11. Mitm --> Stop mitm attack (ストップしないとARPテーブルが元に戻らない) 
3.結果

APがハッキングされると物の見事にIDとPassが盗まれてしまいます。
自分とこのAPで実際にやってみたら本当に簡単でした。これまで無線LANのセキュリティーは非常に脆弱だと認識はしていましたが、確実に防御しないととんでもないことになりますね。

ただ今回の、ettercapはローカルのLANでも同様な手法でIDとPassを盗めますので、ローカルLANへの接続もよく考えて行わないといけないようです。

    2010年9月30日木曜日

    BackTrack 4 R1 のインストール・ネットワーク設定・日本語化その他

    ひょんな事から BackTrack 4 がマイナーバージョンアップ(R1)しているのを知り、手持ちのPCにインストールしてみた時の覚え書き
    (R1とFainalで微妙に違いがあるので相違点も記述)

    A. インストール

    1. ISOイメージをダウンロード
    2. ISOイメージをDVDに焼くかUSBに書き込みPCで起動する。

      USBで起動させるには Royal Windows さんを参考にすると簡単でした。
      サイト管理者様感謝です!
      -
    3. BackTrack 4 R1の起動 
      BackTrack 4 PwnSauce bt tty1
      bt login: root
      Password: toor
    4. X Windows Systemを起動する、コンソールから 
      root@bt:~# startx
    5. 画面上のinstall.shを実行

      Step 2 of 7  Selected city:Tokyo →「Forward」
      Step 3 of 7  Which layout is most similar to your keyboard?:Japan →「Forward」
      Step 4 of 7  Prepare disk space
      --単体の新規HDDにインストールするなら新規HDDを選択し「Forward」
      --既存HDD内の別のパーティション、別のHDDやUSB-HDDにインストールする場合は、Manualでインストール場所を選択する。
      Step 5 of 7  「Advanced」ボタンをクリックし、Boot Loaderの導入先を選択する
      --導入先を間違えないように・・・
      Step 6-7 of 7 再起動

    B.ネットワーク設定
    1. ネットワーク起動

      ネットワークの設定は、コンソールから「networking」コマンドを使う方法とGUIから「wcid」を使う方法で行えるが、無線LANでの運用を考えると「wcid」を使ったほうがよろしいかと思う。

      wicdは [メニュー]->[internet]->[Wicd Network Manager] で起動。

      BackTrack 4 Fainalの場合は、インストール直後は、wcidが起動してこないのでコンソールから
      root@bt:~# /usr/bin/start-network
      Starting Network connection manager: wicd
      root@bt:~# /usr/bin/wicd-client on
      以上を入力後、メニューから起動する。

      AP設定でステルスSSIDの場合は、画面の一覧にSSIDが表示されないので

      [メニュー]->[Network]->[Find a haidden network]から入力
      正しいSSIDならば画面に表示されるはず。

      暗号のパスフレーズは、目的のAP(SSID)の詳細(▽マーク)をクリックすれば入力欄がポップアップするので適時入力。

    2. ネットワークの自動起動設定
      wicdを自動起動に設定する、コンソールから
      update-rc.d wicd defaults
    3. 固定アドレス設定

      BackTrack 4 をインストール当初、コンソールから [/etc/network/interfaces] を編集していたが、どうも挙動がおかしい。
      ネットワーク設定を wicd で行っているので、やはりここは wicd から設定をしたほうがよさそうです。

      wicd起動-->インターフェイス[プロパティ]をクリック-->[固定IPを使用する]にチェック
      -->項目を適時自分の環境に合わせ入力-->再起動
      -
    C.エディタ導入
    1. gedit導入
      vi を使い慣れていないと何かと不便なので gedit をインストールする。
      root@bt:~# apt-get install gedit
      vi に慣れている人はこれ以降の geditvi に読み替える

    D.日本語化
    PC関係(ペネトレーションテスト)さんのサイトを参考にさせていただいた。感謝!
    1. タスクバーのシステムトレイから、キーボードのアイコンをクリックして、キーボード配列を日本語化する 

      ・[タスクバー]→[Settings]→[Regional & Accessibility]→[Keyboard Layout]
      ・Keyboad model:→Japanese 106-key
      ・Available layout:→「jp」Japan を選択し「Add>>」ボタンをクリック
      ・Active layout:→「jp」Japan を選択すると Label:jp に変化
      ・Layout variant:106 を選択
      ・「OK」をクリックして終了
      -
    2. 日本語化に必要なパッケージ{言語パック:入力メソッド}をインストールする

      コンソールから
      root@bt:~# aptitude install language-pack-ja kde-i18n-ja uim uim-qt3 uim-anthy
    3. 日本語を表示するためのフォントをインストールする

      M+ と IPAフォントの合成フォントから「mixfont-mplus-ipa-TrueType-20060520p1.tar.bz2」を画面上(/root)にダウンロード
      ・画面上(/root)の mixfont-*をシングルクリック
      ・[メニュー]→[Action]→[Extact...]→「OK」ボタン(/root、画面上)に解凍
      ・[タスクバー]→[Settings]→[System Administration]→[Font Installer]
      ・「Add Fonts」ボタンをクリック、Add Fonts起動
      ・Desktop、mixfont-mplus-ipa-TrueType-20060520p1をクリック
      ・opfc-ModuleHP-1.1.1_withPAFonts_and...をクリック
      ・fontsをクリック
      M+2VM+IPAG-circle.ttf を反転させ→「Open」ボタンをクリック
      ・フォント一覧に上記フォントが現れていれば成功
      ・.profileの環境変数{LANG:LANGUAGE}に、ja_JP.UTF-8を指定する
      root@bt:~# gedit .profile
      LANG=ja_JP.UTF-8
      LANGUAGE=ja_JP.UTF-8
    4. 再起動する

    E.KDEの設定
    1. デフォルトのKDEでは何かと使い辛いのでコンソールから
      root@bt:~# kpersonalizer
      で設定画面を起動する。
      アイコンの大きさ、タスクバーの設定、壁紙等必要に応じて・・・

    2010年9月28日火曜日

    Ubuntu+Wicd(無線LAN接続ツール)の設定覚書

    OS Ubunto上のWicdを使って無線LAN接続を試みるが接続先がステルスAPのためデフォルトでは接続できない。
    その対策を書き留める。

    A.Wicdでの設定

    参考URL:デジモノ買い物欲しいもの

    1.  Wicd Network Managerを起動する。
    2. アクセスポイントがESSIDをブロードキャストしないステルスモードになっているときは、hiddenをクリックしてESSIDを入力。そうでない場合は、高度な設定でキー他を入力。
    3. 「このネットワークに自動的に接続」をチェック。
    以上で、以後再起動しても自動的に接続されるようになるらしい。


    B.テンプレートの修正で対応

    参考URL:幻想熊日記


    「sudu gedit」で以下のファイルを開く。

    /etc/wicd/encryption/templates/wpa-psk

    ※赤字部分は使用している環境に合わせて変える(wpa等)。

    以下の通り修正する。

    修正前:scan_ssid=$_SCAN
    修正後:scan_ssid=1
    保存して終了する。

    C.confファイルを修正

    参考URL:Ubuntuを入れてみた。

    1. /etc/wpa_supplicant.confがこんな感じ↓
    network={
            scan_ssid=1
            ssid="ssid name"
            key_mgmt=WPA-PSK
            proto=WPA
            pairwise=TKIP
            group=TKIP
            psk=WPAキー(16進数で)
    }
    これは別の設定例 
    ap_scan=1
    ctrl_interface=/var/run/wpa_supplicant
         network={
         ssid="myessid"
         scan_ssid=0
         key_mgmt=NONE
         wep_key0="PASSKEY"
         wep_tx_keyidx=0
         priority=5
    }
    こんなんもありやした
    ctrl_interface=/var/run/wpa_supplicant # 必須,変更不可?
    ctrl_interface_group=0 # このグループ名/グループIDの人のみ設定可能.0 なら root
    ap_scan=1 # ap を scan する (笑
    network={
         ssid="youressid"                                      # ESSID
         key_mgmt=NONE                                      # WEP または 暗号なしなら NONE
         wep_key0="ABCDEFGHIJKLM"                  # WEP KEY."" で囲んである時は文字列
         wep_key1=4142434445464748494A4B4C4D   # WEP KEY.16進なら囲まない
         wep_tx_keyidx=1                                       # 使う KEY 番号
    }
    2. /etc/network/interfacesがこんな感じ↓
    auto wlan0
    iface wlan0 inet dhcp
    wpa-driver wext
    wpa-conf /etc/wpa_supplicant.conf
    
    auto lo
    iface lo inet dhcp
    その他 参考URL

    ・D4
    きれいさっぱり、逝くぜ!

    2010年9月21日火曜日

    ThinkPad s30が起動しなくなった!HDDのMBR修復

    久々に、ThinkPad s30を使ってみたところ何かの拍子にHDDが起動できない状態に・・・

    ThinkPad s30は、2001年に発売されたノートパソコンですが、この当時の IBMブランド ThinkPadは非常に元気があり、色々なノートパソコンを開発していましたね。

    ThinkPadには、535、600等名機といえる機種は沢山ありますが、そのような中、自分的には s30 が一番好きです。この s30 が素晴らしいのは、デザインが秀悦で携帯性やバッテリー稼働時間が当時としては抜きん出ていました。特にデザインは今見ても時代遅れでない!(ミラージュ仕上、ガワタンだけそのままで中身を今のAtomに換えれば・・・)

    しかしこんな素晴らしい s30 ですが、欠点も多くみられます、今時のノートパソコンと違いCD・DVDを内蔵していない、昔は標準装備だったFDD(フロッピーディスク)も内蔵していないため s30 本体だけでは起動すら出来ない。このためD2D領域があるのですが、私のHDDはいつの日かD2D領域が消えていました。
    USB接続CDもあるにはあるが相性の問題で起動しないものが多い始末、おのずと純正品が必要となる。
    勿論、USBメモリーブートも出来ない昔のBiosであるが、googleで検索していると、一部のUSBメモリーで起動可能との事、チョット時間を割いて試してみることに。上手くいけばメッケ物!

    ThinkPad i Series s30の部屋

    上のサイトによれば、GREEN HOUSEのPicoDrive+ だけがUSBブートに対応していたらしい。
    私も幾つかUSBメモリーを所有しているので全て試してみることに・・・

    結果  全滅

    7-8個全て全滅です。他のフォーマッター等も試したが全て起動できませんでした。

    さて如何しよう、この s30 にWindows2000をインストールした記憶を振り返ると確か次の手順で行ったと思う。

    1. s30のHDDを取り出す
    2. 他のPC(Windows XP)にHDDを接続
    3. HDDを3つのパーティションに分割(Windows領域、Dos領域、Data領域)
    4. Dos領域に、Dosをインストールし、OSのCD内のファイルを全てコピー
    5. Dos領域をアクティブに
    6. HDDをs30に戻す
    7. Dos領域よりDosを起動
    8. Dos領域内のOSのセットアップを実行しWindowsをインストール
    9. めでたくWindows起動
    もうひとつの方法として
    1. s30のHDDを取り出す
    2. 他のPC(CD起動又はFDD起動OK)に接続
    3. このPCでOSインストールディスクを起動し、s30から取り外したHDDにインストールを開始する
    4. 一回目の再起動を求められたら、そこでHDDを取り外しs30に戻す
    5. s30を起動すると、インストールが再開される
    6. めでたくWindows起動
    少し漏れがあるかもしれないが大体こんな感じかな・・・

    いまさら昔と同じ方法で復旧するのも面白くない、確かHDDには半年前にアップデートしたWindowsXPが稼動しており、ドライバーやソフトまで一からインストールするのはメンドクサイ。

    多分、HDDのMBRが壊れていると思うので、その修復だけトライしてみる事に。

    今回は、USB-FDDでフロッピーベースのFreeDosを起動し、FDiskで修復を行う
    fdisk /mbr 1
    結果はまた報告します。

    2010年9月12日日曜日

    OSx86で夢を見た!

    昔々(一年半前ほど)、OSx86 iDeneb 10.5.6 +Lenovo T60 2007-6EJ という夢を見た。この機種のほとんどの機能が使えた時は、非常に感激したことが懐かしく思い出される。

    久々にメンテナンスしていると、昔、苦労して設定したことがなかなか思い出せない。一からやり直しの状態です・・・

    一応、今後のため参考にしたサイト等をここに記す。

    まずは MAC OS Xの操作方法サイトから

    次に OSx86 サイト
    各機種での夢の見方
    マルチブートの方法
    • 391R strikes back http://391r.wordpress.com/2009/02/06/windows%E3%81%A8linux%E3%81%A8osx%E3%81%A7%E3%83%88%E3%83%AA%E3%83%97%E3%83%AB%E3%83%96%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
    •  

    2010年7月17日土曜日

    ffmpegのオプション設定 実際の変換結果

    CentOS5.5にfmpegをインストールして、実際に変換を行ってみた。
    Webに掲載するため、FLVへの変換試験です。

    FFmpegのバージョン

    FFmpeg version 0.5.2
      libavutil     49.15. 0 / 49.15. 0
      libavcodec    52.20. 1 / 52.20. 1
      libavformat   52.31. 0 / 52.31. 0
      libavdevice   52. 1. 0 / 52. 1. 0
      libavfilter    0. 4. 0 /  0. 4. 0
      libswscale     0. 7. 1 /  0. 7. 1
      libpostproc   51. 2. 0 / 51. 2. 0
    元動画(Canon5DMarkⅡのフルハイビジョン映像)
    ファイル名:test.mov
    コーデック名:H264
    フレームレート:30
    再生時間:50s
    ビットレート:40,309,193
    幅:1920
    高:1088
    音声コーデック:pcm_s16le
    音声ビットレート:44100
    ファイルの大きさ:256MB
    FFmpegのオプション設定
    • -i」 インプットファイルを指定
    • -b」 変換ビットレートを指定、1000kb/s とkb/sを明示的に指定しないといけなかった。
    • -t」 50秒を全てエンコすると膨大な時間を要するので、「-t」オプションで 「20」を指定し、最初から20秒間をエンコすることにする。
    • -s」 また、フルハイビジョンでWeb上に公開することは無いと思われるので、「-s」オプションで「640x360」を指定した。
    • -ar」 音声ビットレートは明示的に「-ar」で「44100」を指定した。
    • -y」 出力ファイルの上書き指定
    Test1 1Pass 4000kb/s
    ffmpeg -i test.mov -b 4000kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -y test_640_4000kb_1pass.flv
    Test2 1Pass 2500kb/s

    ffmpeg -i test.mov -b 2500kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -y test_640_2500kb_1pass.flv
    Test31Pass 1400kb/s
    ffmpeg -i test.mov -b 1400kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -y test_640_1400kb_1pass.flv
    Test4 1Pass 800kb/s

    ffmpeg -i test.mov -b 800kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -y test_640_800kb_1pass.flv

    Test5 2Pass 4000kb/s

    ffmpeg -i test.mov -b 4000kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -pass 2 -passlogfile log -y ta_640_4000kb_2pass.flv

    Test6 2Pass 2500kb/s

    ffmpeg -i test.mov -b 2500kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -pass 2 -passlogfile log -y test_640_2500kb_2pass.flv

    Test7 2Pass 1400kb/s

    ffmpeg -i test.mov -b 1400kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -pass 2 -passlogfile log -y ta_640_1400kb_2pass.flv

    Test8 2Pass 800kb/s

    ffmpeg -i test.mov -b 800kb/s -t 20 -s 640x360 -mbd rd -g 20 -ar 44100 -pass 2 -passlogfile log -y ta_640_800kb_2pass.flv



    結果・考察


    ----------Test1   Test2  Test3   Test4  Test5  Test6  Test7  Test8
    Pass      1     1     1     1     2     2     2     2
    BitRate   4000   2500   1400   800   4000   2500   1400   800
    大きさ   10.25MB 6.52MB 3.78MB 2.07MB 10.25MB 6.45MB 3.59MB 1.97MB
    画質     ++++   +++    +++    +    ++++   +++    +++    +

    • 元画質が良ければ、1Pass も 2Pass も遜色無いし、出力ファイルの大きさにも差が無い
    • 2500kb/sと1400kb/sでは、差があまり見られなかった。1280x 720の場合には差が見られるようだ。
    • 800kb/sまでビットレートを落とすと明らかに画質が低下した。
    • 今回の試験の結果、1Pass、1200-1500kb/sで変換していこうと思う。
    FFmpegのオプションは、沢山ありすぎて、まだまだ検討の余地はあると思うが、それよりも、バージョンの違いにより、指定方法が違ったりするのが困ったものだ。

    2010年7月16日金曜日

    XOOPS Cubeにログインできなくなった。あせりまくり!!

    表題のとおり自宅サーバーでサイト運営しているXOOPS Cubeにログイン出来なくなりました。

    久しぶりにメンテしようとログインすると、

    ****さん、ようこそ。ログイン中です
    と一瞬表示されるがその後
    このエリアへのアクセスは許可されていません。
    などと表示されログイン画面に戻ってしまう。

    昨年まで運用していたサイトは、メインページがPHPの手書きで、日記などは海外由来のBlogを使用していました。セキュリティー的には殆んどノーガードだったと思います。
    そのBlogを殆んどメンテ無しでそのまま放置していたため、ある日、乗っ取られてしまい、ファイルが改ざんされてしまいました。それ以来、システム全体のセキュリティーを強化しようと模索し現在に至っているわけですが、またヤラレタカ!青くなった次第です。

    Googleで調べていると、多くの方が同じような症状になっているようですね。
    どうも データベースXOOPSのセッションテーブルがおかしくなっているみたいです。
    これを、修復してやると直るみたい。
    変な悪戯をされた事ではなさそうです、一安心!

    早速、ローカルでphpMyaAminを開き、該当テーブルを確認、やはりエラーが出ています。
    コンソールからログイン、MySQLにログイン、続けてXOOPSのデーターベースに接続、そしてリペアーして回復。


    実際の手順は・・・
    [user@centos ~]# mysql -u root -p
    Enter password:   ←パスワード入力
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 28411
    Server version: 5.xx Source distribution
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> show databases;
    +--------------------+
    | Database |
    +--------------------+
    | iptablelog |
    | mysql |
    | snort_log |
    | xoops |    ←これが目的のデーターベース
    +--------------------+
    4 rows in set (0.00 sec)

    mysql> use xoops
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    Database changed

    mysql> show tables;
    +-------------------------------------+
    | Tables_in_xoops |
    +-------------------------------------+
    | b3defd_altsys_language_constants |
    | b3defd_pico_categories |
    | b3defd_pico_category_permissions |
    | b3defd_pico_content_extras |
    | b3defd_pico_content_histories |
    | b3defd_pico_content_votes |
    | b3defd_pico_contents |
    | b3defd_pico_tags |
    ------------ 中略 --------------
    | b3defd_protector_access |
    | b3defd_protector_log |
    | b3defd_ranks |
    | b3defd_session |  ←これが目的のテーブル
    | b3defd_smiles |
    | b3defd_user_mailjob |
    | b3defd_user_mailjob_link |
    | b3defd_users |
    | b3defd_xoopscomments |
    | b3defd_xoopsnotifications |
    | search |
    +-------------------------------------+
    121 rows in set (0.01 sec)

    mysql> REPAIR TABLE `b3defd_session`;
    +--------------------------+--------+----------+------------------------------------------+
    | Table | Op | Msg_type | Msg_text |
    +--------------------------+--------+----------+------------------------------------------+
    | xoops.b3defd_session | repair | warning | Number of rows changed from 1683 to 1685 |
    | xoops.b3defd_session | repair | status | OK |
    +--------------------------+--------+----------+------------------------------------------+
    2 rows in set (0.03 sec)
    これで、修復されました。
    早速、phpMyAdminで確認してみると、修復されているようです。次に、ブラウザでログインしてみるとチャンとログインできました。

    2010/07/19 追記
    データベースのリペアーを行うコマンド「REPAIR TABLE `b3defd_session`;」の「`」が「'」とは違う。
    完全に「'」と思っていたため、エラーばかり出てしまう。よくよく見てみると、「`」だった。思い込みは失敗を呼びます。反省!
    • '」  quote、single quote、apostrophe
    • `」  grave mark、reverse single quote、spacing grave accent、back apostrophe
    2010/07/26 追記
    データベースのチェックと修復についてもう少し詳しく調べてみた。
    MySQLのマニュアルから
    そのものずばり参考になったサイトとして

    Sync A World You Want To Explore

    phpmyadmin上からの修復
    もっと簡単にphpmyadmin上から修復出来るはずだと思っていましたが、やはり出来ました。
    これまで、phpmyadminは使ったことが無かったので調べることもしていなかった。
    • phpmyadminにログイン
    • 該当のデータベースを選択
    • テーブル一覧の下「すべてをチェックする」でチェックする
    • テーブル一覧の下「チェックしたものを:」の「テーブルをチェックする」を選択
    • エラーテーブルをチェックする
    • テーブル一覧の下「チェックしたものを:」の「テーブルを修復する」を選択
    以上で終了