2009 年 10 月のよしだむメモ


[最近] [トップ]

2009 年 10 月の事

<< < 2009/10 > >>
Sun Mon Tue Wed Thu Fri Sat
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

2009-10-01 (Thu)

Microsoft Security Essentials

_ Microsoft Security Essentials が正式リリースされたようなので, インストールしてみた。 体感的な速度は Forefront Client Security と同じくらいかな。 エンジンは FCS とほとんど同じ物みたいだが,バージョンが 1.5 から 2.0 になっているな。 機能や設定できるオプションは FCS より大幅に簡略化されているようだ。


2009-10-02 (Fri)

無為な一日

_ 散歩とか。


2009-10-03 (Sat)

中秋の名月

_ 月。

_ [満月]


2009-10-04 (Sun)

OP25B

_ いつのまにか EMOBILE の回線から SMTP につながらなくなっていることに気がついた。 そういえば OP25B が行われるという連絡が来ていたような気がするな。

_ ということで自宅メールサーバの submission ポートを開いてメールが送信できるようになった。

_ まあ,SSH トンネルを使うことが多いので submission ポートは使うことは無いかもしれない。


2009-10-05 (Mon)

無為な一日

_ 読書とか。


2009-10-06 (Tue)

無為な一日

_ 読書とか。


2009-10-07 (Wed)

無為な一日

_ 読書とか。


2009-10-08 (Thu)

無為な一日

_ 散歩とか。


2009-10-09 (Fri)

WebBoy

_ 押入の整理をしていたら WebBoy for DOS を発見したので, インストールしてみることにした。 フロッピーからインストールなんて久しぶりだな。 パッチもまだ IBM のサイトに残っているみたいだ。

_ 今となってはまともに見られないサイトが多いな。 Flash はともかく,UTF-8 に対応していないのはつらい。 HTTPS も駄目だな。たぶん 40bit 暗号までしか対応していないんだろう。

_ 残念ながらもう実用には耐えないな。


2009-10-10 (Sat)

WebBoy

_ openssl s_server で WebBoy の SSL 対応を確認してみた。 どうも対応しているのは SSL3 の EXP-RC4-MD5 と EXP-RC2-CBC-MD5 だけみたいだ。 どちらも 40bit 暗号なので,まともなサイトでは既に使われていないだろうなぁ。


# openssl s_server -key /etc/httpd/conf/ssl.key/server.key \
  -cert /etc/httpd/conf/ssl.crt/server.crt -cipher 'ALL:!aNULL' -msg
Using default temp DH parameters
ACCEPT
<<< SSL 2.0 [length 002f], CLIENT-HELLO
    01 03 00 00 06 00 00 00 20 00 00 03 00 00 06 6e
    02 d0 00 25 cc ee 32 49 b3 59 49 52 ea f1 8f b0
    3c 25 34 8a 91 31 b8 b4 c7 b9 53 f0 76 87 bb
...
...
Shared ciphers:EXP-RC4-MD5:EXP-RC2-CBC-MD5
CIPHER is EXP-RC4-MD5
GET / HTTP/1.0
Host: www.yoshidam.net:4433
Accept: text/plain, text/html, image/gif, image/jpeg, */*
User-Agent: WebBoy/4.00D (DOS; I)

2009-10-11 (Sun)

無為な一日

_ 押入の整理とか。


2009-10-12 (Mon)

無為な一日

_ 散歩とか。


2009-10-13 (Tue)

無為な一日

_ 昼寝とか。


2009-10-14 (Wed)

無為な一日

_ 読書とか,Windows Update のトラブル対応とか。 今回の月例アップデートは妙に不安定なような気がする。 動かなくなるアプリケーションがあったり,無線 LAN がつながらなくなったり。


2009-10-15 (Thu)

無為な一日

_ 読書とか。


2009-10-16 (Fri)

無為な一日

_ 昼寝とか。


2009-10-17 (Sat)

無為な一日

_ ビデオの消化とか。


2009-10-18 (Sun)

無為な一日

_ 散歩とか。


2009-10-19 (Mon)

無為な一日

_ 読書とか。


2009-10-20 (Tue)

無為な一日

_ 古いフロッピーディスクやマニュアルの整理とか。 IBM ThinkPad 220 や 560 あたりのマニュアルがまだ残っていた。

_ MSX 用の一部のフロッピーディスクをハードディスクにバックアップ。 ひらがなファイル名が Windows で読めないので, MSX エミュレータで MSX-DOS を動かしてリネームしたりとか。

_ PC-98,TOWNS の 1.2MB フロッピーディスクも 3 モード FDD が残っているうちになんとかしないとなぁ。


2009-10-21 (Wed)

無為な一日

_ 散歩とか。


2009-10-22 (Thu)

CentOS

_ CentOS 5.4 にアップデート開始。


2009-10-23 (Fri)

無為な一日

_ 散歩とか。


2009-10-24 (Sat)

SSL/TLS

_ サーバのセキュリティチェックのため, SSL/TLS サーバの対応 CipherSuite を列挙する簡単なツールを作ってみた。 まあ, Nessus とか使えばチェックできるのだが, STARTTLS のチェックはしてくれないようなので。

_ 使用例は以下の通り。


IIS 7.5 (Windows Server 2008 R2)
 
$ ruby ssl_cipher.rb --host strelka --port 443 --version tls12
00 00 04: TLS_RSA_WITH_RC4_128_MD5
00 00 05: TLS_RSA_WITH_RC4_128_SHA
00 00 0a: TLS_RSA_WITH_3DES_EDE_CBC_SHA
00 00 2f: TLS_RSA_WITH_AES_128_CBC_SHA
00 00 35: TLS_RSA_WITH_AES_256_CBC_SHA
00 c0 13: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
00 c0 14: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
$ ruby ssl_cipher.rb --host strelka --port 443 --version ssl2
01 00 80: TLS_RC4_128_WITH_MD5
07 00 c0: TLS_DES_192_EDE3_CBC_WITH_MD5
01 00 80: TLS_RC4_128_WITH_MD5
07 00 c0: TLS_DES_192_EDE3_CBC_WITH_MD5

_ デフォルトで SSLv2 が有効になっているので,禁止にするのがいいかも。

_ SSL 待ち受けだけでなく,SMTP, IMAP,POP3 の STARTTLS にも対応してみた。


sendmail (O CipherList=ALL:!LOW:!SSLv2:!EXP:!ADH)
 
$ ruby ssl_cipher.rb --host sayuri --port 25 --starttls smtp
00 00 04: TLS_RSA_WITH_RC4_128_MD5
00 00 05: TLS_RSA_WITH_RC4_128_SHA
00 00 0a: TLS_RSA_WITH_3DES_EDE_CBC_SHA
00 00 16: TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
00 00 2f: TLS_RSA_WITH_AES_128_CBC_SHA
00 00 33: TLS_DHE_RSA_WITH_AES_128_CBC_SHA
00 00 35: TLS_RSA_WITH_AES_256_CBC_SHA
00 00 39: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
00 00 41: TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
00 00 45: TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA
00 00 84: TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
00 00 88: TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA
00 00 96: TLS_RSA_WITH_SEED_CBC_SHA
00 00 9a: TLS_DHE_RSA_WITH_SEED_CBC_SHA

_ SSL ハンドシェイク中にソケットを切断するせいで, ログファイルにエラーが大量に残ってしまうことに注意。


2009-10-25 (Sun)

無為な一日

_ ビデオの消化とか。


2009-10-26 (Mon)

SSH

_ SSH サーバが鍵交換ネゴシエーションで提示する暗号化アルゴリズムを列挙するツールを作ってみた。 SSH 1.x プロトコルには非対応。

_ 使用例。Solaris 10 の Sun SSH の場合。


$ ruby ssh_cipher.rb --host sasami.v6.yoshidam.net
SSH Protocol:
        SSH-2.0-Sun_SSH_1.1.2
Key Exchange Algorithms:
        gss-group1-sha1-toWM5Slw5Ew8Mqkay+al2g==
        diffie-hellman-group-exchange-sha1
        diffie-hellman-group1-sha1
Encryption Algorithms (Client to Server):
        aes128-ctr
        aes128-cbc
        arcfour
        3des-cbc
        blowfish-cbc
        aes192-ctr
        aes192-cbc
        aes256-ctr
        aes256-cbc
Encryption Algorithms (Server to Client):
        aes128-ctr
        aes128-cbc
        arcfour
        3des-cbc
        blowfish-cbc
        aes192-ctr
        aes192-cbc
        aes256-ctr
        aes256-cbc
MAC Algorithms (Client to Server):
        hmac-md5
        hmac-sha1
        hmac-sha1-96
        hmac-md5-96
MAC Algorithms (Server to Client):
        hmac-md5
        hmac-sha1
        hmac-sha1-96
        hmac-md5-96
Compression Algorithms (Client to Server):
        none
        zlib
Compression Algorithms (Server to Client):
        none
        zlib
Languages (Client to Server):
        ja-JP
        ko
        ko-KR
        th-TH
        zh
        zh-CN
        zh-HK
        zh-TW
        ja
        th
        i-default
Languages (Server to Client):
        ja-JP
        ko
        ko-KR
        th-TH
        zh
        zh-CN
        zh-HK
        zh-TW
        ja
        th
        i-default

2009-10-27 (Tue)

無為な一日

_ 散歩とか。


2009-10-28 (Wed)

無為な一日

_ 散歩とか。


2009-10-29 (Thu)

無為な一日

_ mswin32 版 Ruby で zlib,openssl モジュールを使いたくなったので, ビルド環境を構築して zlib,openssl のビルドとか。

_ gem list --remote がメモリ不足で動かないな。 ビルド環境がおかしいのかな。


2009-10-30 (Fri)

VMware

_ VMware Workstation 7 のアップグレード版購入。 インストールしてみた。

_ 主な変更点は Windows 7 対応くらいだから大きな変化は無いな。 仮想ネットワークの設定ツールはかなり変わっているみたいだけど。 あと,VMware Player で仮想マシンの作成ができるようになったな。


2009-10-31 (Sat)

Ruby

_ openssl モジュールを使ってみた。 これはすごく便利だ。

_ 試しに DH 鍵交換とか書いてみた。


#! /usr/bin/ruby
# -*- coding: UTF-8 -*-
 
require 'openssl'
 
DH_P = 58017913293649383447186646532664972244033207584175757336631944383204128162683
DH_G = 2
 
## A側
dh1 = OpenSSL::PKey::DH.new
dh1.p = DH_P
dh1.g = DH_G
raise 'invalid param' unless dh1.params_ok?
dh1.generate_key!
pub1 = dh1.pub_key.to_s(16)
puts '公開鍵AtoB: ' + pub1
 
## B側
dh2 = OpenSSL::PKey::DH.new
dh2.p = DH_P
dh2.g = DH_G
raise 'invalid param' unless dh2.params_ok?
dh2.generate_key!
pub2 = dh2.pub_key.to_s(16)
puts '公開鍵BtoA: ' + pub2
 
## A側
pubkey2 = OpenSSL::BN.new(pub2, 16) ## 公開鍵BtoA
seckey1 = dh1.compute_key(pubkey2)
puts '対称秘密鍵A: ' + seckey1.unpack('H*').join
 
## B側 
pubkey1 = OpenSSL::BN.new(pub1, 16) ## 公開鍵AtoB
seckey2 = dh2.compute_key(pubkey1)
puts '対称秘密鍵B: ' + seckey2.unpack('H*').join
 
  
CIPHER = 'AES-256-CBC'
SECRET_MESSAGE = 'これは秘密の文書です'
 
## A側
cipher1 = OpenSSL::Cipher::Cipher.new(CIPHER)
cipher1.encrypt
cipher1.pkcs5_keyivgen(seckey1)
crypted = cipher1.update(SECRET_MESSAGE) + cipher1.final
puts '暗号化: ' + crypted.unpack('H*').join
 
## B側
cipher2 = OpenSSL::Cipher::Cipher.new(CIPHER)
cipher2.decrypt
cipher2.pkcs5_keyivgen(seckey2)
decrypted = cipher2.update(crypted) + cipher2.final
puts '復号: ' + (defined?(Encoding) ? decrypted.force_encoding(__ENCODING__) : d
ecrypted)

_ でもドキュメントが残念すぎるな。 ソースを読まないと使えない感じだ。


Ganerated by nDiary version 0.9.4
Yoshida Masato (yoshidam@yoshidam.net)