トップ 最新 追記

yoggy's diary

〜せかいのすみっこから〜


2004-08-01

朝から

テレビで放送していたこれをみてまったり.

Ninja Turtles

会場で見かけた変なものシリーズ〜その2

ナンバープレートが... どうやって操作するんだろう...? はじめて見たセグウェイ


2004-08-02

DEFCON12のセッションのメモ

写真ばかりでは自分が内容を忘れてしまいそうなので(汗,見たセッションのメモを書いてみるテスト.

Attacking Windows Mobile PDA’s (7/30)

WindowsCEはXPなどと比べるとセキュリティ的にかなりしょぼいので,あれこれ仕掛けて楽しもうというお話.

KeyboardLogger,ARMプロセッサのアセンブラ少々, ftpsvr.exeのBufferOverflowを利用したハードウェアリセット,WindowsCEのハックに使用するツール紹介などなど.

WindowsCE(WindowsMobile)の開発はeVC3/4あたりで開発できるので, VisualC++に慣れている人ならば,比較的入りやすいジャンルかも?

Tor: An Anonymizing Overlay Network For TCP (7/30)

匿名通信を実現するためのtorというソフトの紹介. 従来の匿名通信を実現する方法として,現状ではmixとproxiesの2種類が存在し, この2つを組み合わせたメッセージルーティングの方式をOnion Routingというらしい. 今回のtorはこのOnion Routingを拡張した方式ものとして紹介されていた.

torの開発版はこちら

Shoot the Messenger (7/31)

"Shoot the Messenger"といってもMSN Messengerの話ではなく,Shatter Attackの原理・攻撃・防御手法などの解説. Shutter Attackについては塩月さんのWindowsメッセージによる権限上昇の危険性の資料もあわせてどうぞ.

個人的にShatter Attackはなんとなく知っている程度だったので, そういう意味でなかなか面白かったです.

Advanced Netfilter; Content Replacement (ala Snort_inline), and Port Knocking Based on Passive OS Fingerprinting (7/31)

fwknopfwsnortの紹介.fwsnortが利用しているiptables string match extensionの解説.あとはSnort_inlineとの性能比較などなど.

Network Attack Visualization (7/31)

スケジュール変更でGoogle Hackingのセッションとかぶってしまったのですが,こちらの方に興味があったので見たセッション.

大量のデータを効率よく見るためには,Visualization(可視化)が有効ですよーというお話. 既存の可視化ツールの紹介や,発表者が作成しているrumintのデモ.

Steganography, Steganalysis, & Cryptanalysis (8/1)

Steganographyの基礎からSteganalysis(検出),Cryptanalysis(解読)の手法について紹介. 発表者が作成している検出ツールStegSpy V2.0 も紹介されていた.

発表者のサイトはこちら

StegSpyはMozillaのプラグインとしても実装したいなーと言っていたので,ちょっと期待.

Information Hiding in Executable Binaries (8/1)

Steganographyのひとつとして,実行ファイルの中に情報を埋め込むための 手法が解説されていました.実行時の動作を変更せずに,

  • 使用しているレジスタの入れ替え
  • 実行順序の変更
  • 代替コードへの置き換え

などを駆使してバイナリの中に情報を埋め込むみたいです.

Hydanというツールのデモがありました.

発表者が「x86のアセンブラしってる?」と聞いたとき,8割ぐらいの人が手を挙げていたのでびっくり.

動画いろいろ

QuickTimeです.ファイルサイズがちょっと大きいので,お茶でも飲みながら気長にダウンロードしてください.(^^;

"See you next year!"

一番最後にDark Tangentが言ってた言葉.また来年も行ってみたいなー.

こちらは現地時刻で朝の5時を過ぎたぐらいです.あと2時間ぐらいで空港に向かう予定です.

DEFCON12

本日のツッコミ(全2件) [ツッコミを入れる]

れですも [おつかれさまでしたー。ご無事のお帰りを。 ・・・いいなあ(ぼそ]

たぬきん [普通に羨ましいよ?(´д`*]


2004-08-03

帰国しましたー

といってもまだ,帰宅途中の高速バスの中で渋滞にはまってる最中だったりして...(;´Д`)

本日のツッコミ(全4件) [ツッコミを入れる]

bun [おつかれさま〜]

けん [おかえりー]

tessy [お疲れ様〜 あっという間にテーマも戻ってますな。]

しかP [テーマ?…はてな経由では分からない罠だ(涙 #つか、もつかれです>よぎーさん #土産話を期待してますぅ(^_^)]


2004-08-04

自宅で時差ぼけ調整中

あしたから通常営業の予定.社会復帰できるのだろうか...?(汗

こぼれ話

  • ラスベガス空港内にあった売店でDDJを発見&おもわず購入.$4.99なり.
  • 帰りはラスベガス->ロサンゼルス->成田の乗り継ぎだったのですが,ロサンゼルス->成田の飛行機の出発が約2時間遅延.結局ロサンゼルス空港で合計5時間待ち.かなりへこむ.(;´Д`)
  • 遅延のお詫びに航空会社から$20のお食事券をもらう.微妙にラッキー?
  • ぅー,5時間もどうしようかなぁ...と,空港内を一人でとぼとぼ歩いていたら,偶然びっくり爺さんに遭遇.ちょっとびっくり.

メリケンのモバイル事情

車で移動することが多いからそんなに発達してないのかな?と思っていたら, 空港での待ち時間にホットスポットを利用している人を良く見かけました. 日本だと通勤途中とかでの利用が多いので,携帯端末が発達していると思うのですが, また異なったスタイルで発達していて面白いなーと思いました.

以下,アメリカ国内でのホットスポットとかのメモ.

  • Boingo Wireless
    • 空港やホテルとかにあるホットスポット.
    • $21.95/月または$7.95/2日のコース
    • 実は空港で5時間待っている間にPCを起動したら,偶然このホットスポットがあることに気がついたりして...(^^;
  • T-Mobile Hotspot
    • 空港・ホテル・スターバックスなどで利用できるホットスポット.
    • $29.99/月とか$6.00/1時間とか,いろいろコースあり.
    • 雑誌を見ていたら紹介されていたのでメモ.
  • AT&T EDGE Service
    • AT&T Wirelessが提供しているAirH"みたいなサービス.
    • 通信速度は100K〜130Kぐらい?.通信方式はGPRSとEDGE.
    • 利用料金は$79.99/月
    • ホットスポットではないのですが,空港でこれ使っているおばちゃんを見かけたのでメモ.
  • PalmOneのTreoシリーズ
    • メール,Web,IMとか,PalmOSで使えるものなら何でも.音声通話も使える.
    • GSM/GPRSモデルとCDMAモデルの2種類存在.
    • DEFCON会場でこれを使っている人をやたら見かけたのでメモ.某笠原さんも使ってました.(^^;
  • Hiptop
    • こちらもTreoみたいに音声通話,メール,Web,IMが使える
    • 通信方式はGSM/GPRS?

#日本の携帯を見ていると,PC98シリーズとPC/AT互換機のデジャビュを見ているような気がするのは気のせい?

本日のツッコミ(全3件) [ツッコミを入れる]

びっくり爺 [これこれ! 爺さまは、昨日から通常勤務じゃわ。]

よぎ〜 [いまだに昼間にものすごく眠くなってしまいます...(汗]

みゃー [そゆときはムリせずねちゃえ〜♪(もしくはopenmyaに投稿)]


2004-08-05

Bloglinesの未読

が鬼のように溜まっているのでぼちぼちと...(^^;

未登録機器のイーサネット接続をブロック - ip-sentinel(@IT)

仕掛け自体はシンプルですが,なかなか効果的そうですね〜.

RSSの重要ニュースを“地図”で色分けする「News Map」(INTERNET Watch)

個人的には,そのまままじめに重要度を表示してしまうと,人がそこにしか集まらなくなるような気がするので, ある程度ランダムに重み付けを割り振ってみると面白いんじゃないかな?と思ってみるテスト.

圧縮ファイル解凍の脆弱性

遅まきながら.この辺のネタと組み合わされると,ちょっと痛い目にあわされそうな気が...

セキュリティホールmemoに載っているように,解凍ソフト側で,

・デフォルトでは絶対パスへの展開を行わない (オプションスイッチなどで明示的に許可する必要がある)

・デフォルトで絶対パスへの展開を行おうとするが、ユーザに対して確認ダイアログ等を表示する

という対応がされることを期待します.

GNU tarとかの場合,

	$ tar cvfz hoge.tgz /home/hoge

とかすると,圧縮時にパスの先頭にある"/"が外れるよう になっている仕様は,先人の知恵だったのかな...?

memtest86+

セキュリティホールmemoより.気になったのでメモ.


2004-08-06

Hidemarnet Explorer

これでWikiの編集が直接できれば最強環境になるのだが...(^^;

MSN Web Messenger Beta

なかなか便利かも?と思って使っていたら,Gaimから送信したメッセージが表示されない...ひょっとしてフォントの問題?

debian.co.jp で商用の UML 専用サーバーサービスを開始

debian.co.jpでUML専用サーバ(最小構成・月額)1,050円だそうで.

メモリ16MB,HDD 650MB,IP1つの最小構成で1050円/月(税込).メモリ128MB,HDD 4.7GBとかの構成にすると3675円/月(税込).

小規模なWebサーバを立てるぐらいの用途だったら安くてなかなかいいかも?

おつかれさまでした〜

激しく筋肉痛になりそうな予感なんですけど…_| ̄|○


2004-08-07

Trackbackの脆弱性についての勧告(blog.bulknews.net)

ここではTrackbackは使ってないのでプロトコルとかの詳細はよく知らないのですが,送信元の確認や認証などをせずにPOSTされたデータを無条件で受け付けてしまう仕様に問題があるのかな...?

対処方法の「5.Trackbackプロトコルのバージョンを上げて」というのは,その辺の仕組みが入ったプロトコルになってるのかな?とりあえず,あとで調べるためのメモ.

Lightweight Language Weekend(1日目)

たまには本業に近い内容のイベントへ.

ジャヴァの奇妙な冒険「エイジャの赤石=Ruby」にはかなり感動.Eclipseで受けた衝撃は,まさにそんな感じだったかも?

...って,ぜんぜんLLに関係ないし(汗

#Lightweight Language WeekendだとJavaはアウェイなのね.

LL週末メモ

Lightweight Languageとデザインパターン

LLでデザインパターンを適用するとコード量が多くなりがち みたいな話が出てたような気がするのですが,

  1. サクっとコーディングする
  2. 実装のノウハウを再利用可能な形でコーディングする

のは,相反する要素なのかな...?

どちらかというと1はユーザが手で書く領域で,2はRubyのIteratorみたいに 言語やライブラリでサポートする範囲なのかな?と,何となく考えてみたり.

RubyGems

PerlのCPANモジュールみたいなパッケージングシステム. ちょっと気になったのでメモ.

継続

継続をサポートする言語を使ったことがなかったので, 初めて聞いたときは理解できなかったのですが, なんとなく言語レベルでのFiberかな?なんて勝手に想像してみたり.(笑

ソースコードの公開について

お昼の「LLを仕事に」のセッションで出ていた話題. 「ソースコードが汚いので見せたくないなぁ」という意見が出てきて 思わず笑ってしまいました.

個人的には「ファイル閲覧機能付きCGI」を 作りこんでしまった場合(?),そのままLLで書いたCGIを使っていると 意図せずソースコード丸見えになることあるよなぁ...なんて思ったり.

Javaなんてうん○?

去年の某氏の名言ですが,個人的には, 「うん○プロジェクトにはJavaがよく採用されている」というのを, パブロフの犬的に「Java=うん○」と言ってるのかなぁ...なんて想像してみたり.

LLを使っている人にとっては,Java言語でコーディングすると かなり冗長な表現になってしまうのがウザイと思います.

逆にJava言語は,

  • 演算子のオーバーロード無し
  • 多重継承無し
  • Perlとかのコンテキスト依存の謎のお約束変数が無い
  • マクロ使用不可
  • 目に見えているコードが実行内容のすべて

などと,言語自体をシンプルにしてコーディングレベルのバグを 減らそうとしている言語仕様を目指していると思います. 個人的にはこの辺の方向性がJava言語で気に入っている点の1つです.

個人的にはJava言語自体には罪は無いと思いますよ(笑

#まぁ私も,Eclipseが無いとJavaでコーディングする気はまったくおきなかったりするのですが...(汗

本日のツッコミ(全2件) [ツッコミを入れる]

ちせ [実はこちらも、コソーリと見ています(笑)。]

よぎ〜 [どもーヽ(´ー`)ノ]


2004-08-08

Lightweight Language Weekend(2日目)

LL侍おもしろすぎ(笑

Lightweight Language Weekend への反応リンク集

なんだかTrackbackよりもリンクが多いのでメモ(汗


2004-08-09

Lightweight Language Weekend 2日目メモ

HaskellのWebアプリ

継続を使ったWebアプリの書き方には,かなりの衝撃を受けたり.

継続を使って画面遷移する際の処理を,自然に表現できてるところがすごい.(^^;

Lispの処理系

磯さんの,新しい言語を触るときにはかならずLispのインタプリタを書いてみるという 言葉が印象に残っていたり.

隣に座っていた

かずひこさんにごあいさつ.

「〜の誰それ」という感じで,何をしてる人なのかある程度素性が明らかになっていた方が, ごあいさつもスムーズにできるのになぁ...と,ちょっと精進が足りてない自分を反省.

次回の希望とか?

「あなたの開発環境見せてください」のコーナー希望.

みなさんどんな感じでコーディング・テスト・デバッグ・リファクタリングとかしてるのかな?と 気になっていたり.できればリアルタイムでコーディングしているところを実況するとか.

もし,その中から良い習慣を見つけることができれば,まねしてみたいです.(^^;

最近,少しずつRubyをさわりはじめようかなぁ...と思っているところなのですが, 結局私はEclipseで人間をやめてしまった人(ここの資料P26参照)なので,とりあえず今のところはRDTを試しています(汗

【Tor】の導入方法

先日少し紹介したTorを,IEから使う方法のまとめ.

mod_ruby-1.2.1

登場してるみたいです.Journal InTimeより.


2004-08-10

SQLiteをRuby/DBIから使ってみるテスト

CGIでデータ保存するならDB使ったほうがいいのなぁ?と思ったので,ちょっとだけ使ってみました.

で,使っているうちになんか変だなーと思って,試しに下記のプログラムを実行してみたら...

	#!/usr/bin/env ruby

	require 'dbi'
	require 'time'

	#
	$db_file = 'test.db'
	$db_url  = "DBI:SQLite:#{$db_file}"
	$number  = 1000

	#
	def getDBHandle
	  dbh = DBI.connect( $db_url )
	  dbh['AutoCommit'] = true
	  dbh
	end

	#
	def updateTest
	  STDOUT.print "pid=#{Process.pid} start updateTest \n"
	  begin
	    dbh = getDBHandle
	    sql = "update test1 set name=? where id_name=?"
	    dbh.prepare(sql) do | sth |
	      0.upto( $number ) do |i|
	        sth.execute( "ほげ-#{Time.now.xmlschema}", i )
	        sleep 0.1
	      end
	    end
	    dbh.disconnect
	  rescue Exception => e
	    STDOUT.print "pid=#{Process.pid} exception in updateTest... e=#{e.to_s}\n"
	  end
	  STDOUT.print "pid=#{Process.pid} finish updateTest \n"
	end

	#
	def selectTest
	  STDOUT.print "pid=#{Process.pid} start selectTest \n"
	  begin
	    ($number/10).times { |i|
	      dbh = getDBHandle
	      dbh.select_all('select * from test1') do | row |
	        #STDOUT.print "pid=#{Process.pid} num=#{num} id=#{id} name=#{name}\n"
	        #STDOUT.flush
	      end
	    }
	  rescue Exception => e
	    STDOUT.print "pid=#{Process.pid} exception in selectTest... e=#{e.to_s}\n"
	  end
	  STDOUT.print "pid=#{Process.pid} finish selectTest \n"
	end


	#
	# create table & insert test data...
	#
	File.delete( $db_file ) if File.exist?( $db_file )
	STDOUT.print "pid=#{Process.pid} start create table & insert test data...\n"
	dbh = getDBHandle()
	dbh.do( "create table test1( id_name integer primary key, name text );" )
	dbh.prepare( "insert into test1(id_name,name) values( ?,? )" ) do | sth |
	  0.upto( $number ) do |i|
	    sth.execute( i, "ほげほげ#{i}" )
	  end
	end
	dbh.disconnect
	STDOUT.print "pid=#{Process.pid} finish create table & insert test data...\n"

	#
	# fork select & update process ...
	#
	20.times {|n| Process.fork { selectTest } }
	Process.fork { updateTest }
	Process.waitall

ロックがかかっているときに他のプロセスとかからDBにアクセスすると,いきなり例外が飛ぶ様子.せめてロックが解除されるまで少しぐらいはSQL文の実行を待ってほしいなぁ...

ひょっとして何か設定が他にあるのかな?

RubyのPStoreを使ってみるテスト

SQLiteの他に何かお手軽な物は無いかな?と思ったので, PStoreを使ってみるテスト.Rubyリファレンスマニュアル - PStore を参考にしました.

	#!/usr/local/bin/ruby

	# use "RAA - ruby-guid"
	require 'guid'
	require 'pstore'
	require 'time'

	#
	$db = PStore.new( "addr.db" )
	$number = 100

	#
	class Person
	  def initialize( name, mail )
	    @id   = Guid.new.to_s
	    @name = name
	    @mail = mail
	    @update = Time.now
	  end
	  attr_reader   :id, :update
	  attr_accessor :name, :mail

	  def to_s
	    "person[ @id=#{@id}, @name=#{@name}, @mail=#{@mail}, @update=#{@update.xmlschema} ]"
	  end
	end

	#
	def pstoreTest1
	  #
	  $number.times { |i|
	    STDOUT.print "pstoreTest1: pid=#{Process.pid} i=#{i}\n"
	    STDOUT.flush
	    p = Person.new( "ほげ#{i}-pid=#{Process.pid}", "hoge#{i}@example.com" )
	    $db.transaction do
	      if $db.root?( "persons" ) then
	        ps = $db["persons"]
	      else
	        ps = Hash.new
	      end
	      ps["person:#{i}"]  = p
	      $db["persons"]     = ps
	    end
	  }
	end

	#
	def pstoreTest2
	  $db.transaction do
	    $number.times { |i|
	      STDOUT.print "pstoreTest2: pid=#{Process.pid} i=#{i}\n"
	      STDOUT.flush
	      p = Person.new( "ほげ#{i}-pid=#{Process.pid}", "hoge#{i}@example.com" )
	      if $db.root?( "persons" ) then
	        ps = $db["persons"]
	      else
	        ps = Hash.new
	      end
	      ps["person:#{i}"] = p
	      $db["persons"]    = ps
	    }
	  end
	end


	#
	def pstoreTest3
	  #
	  $db.transaction do
	    ps = $db["persons"]
	    p $db.roots
	    ps.each_pair { |k,v|
	      STDOUT.print "person[#{k}]=#{v}\n"
	    }
	  end
	end

	#
	# main
	#
	STDOUT.print "==== test1 ====\n"
	File.delete( "addr.db" ) if File.exist?( "addr.db" )
	st1 = Time.now
	10.times {|n| Process.fork { pstoreTest1 } }
	Process.waitall
	t1 = Time.now - st1

	STDOUT.print "==== test2 ====\n"
	File.delete( "addr.db" ) if File.exist?( "addr.db" )
	st2 = Time.now
	10.times {|n| Process.fork { pstoreTest2 } }
	Process.waitall
	t2 = Time.now - st2

	STDOUT.print "==== test3 ====\n"
	pstoreTest3

	STDOUT.print "t1=#{t1}, t2=#{t2}\n"

複数プロセスからの操作でも,transactionが終わるまで他プロセスは待つみたいな様子. なかなかお手軽でいい感じかも.

で,手元の遅いLinuxマシンで実行してみた結果は次のとおり.

	t1=12.914477, t2=0.864499

t1は毎回,t2はまとめてtransactionで処理した場合の処理時間. 結構処理速度が違うみたいですね.

というわけで,

メモ代わりにソースを丸ごと貼り付けているので,日記が異様に見づらくなってしまう罠(汗

本日のツッコミ(全1件) [ツッコミを入れる]

かずひこ [sqlite-ruby だとどうでしょう? http://raa.ruby-lang.org/project/sql..]


2004-08-11

VC7.1って...

別に.NET Framework使わなければ,VC6で十分じゃないかと思ってしまったり...(笑

とりあえずだったら,今度のdotNETマガジンについてくるVisualStudio 2005β版を使ってみるとか?

MSDN Subscriber Downloads(要Professional以上?のサブスクリプション)だと,いまだにVC1.52とかVC4.2とかダウンロードできたり.

あー

久しぶりにActionScriptですよー.

Orto

hirax.netより.

Orto は JavaScript 上で動く JavaVM です。Java を JavaScript に変換します。

おー,すげー.サンプルのテトリスでちょっと遊んでしまった...(^^;

#これってJ2SEのクラスがそのまま使えるわけじゃないのね.

本日のツッコミ(全3件) [ツッコミを入れる]

みゃー [侍ネタすごいなあ。。]

めむら7.1 [とりあえず、コンパイラ自体の性能は上がってるはずなんですけどね。どうでしょうか(笑)。]

よぎ〜 [単にWin32APIをちょろちょろいじっているだけだったら, 大して変わりはないかな?と思っただけです(笑 コンパ..]


2004-08-12

Windows XP SP2 日本語版

MSDN Subscriber Downloadsからダウンロードできる様子.

とりあえず,VMWareに入れているXPで様子をみてみよっと.

ひつまぶし

「ひまつぶし」に見える罠.

...単に暑さでボケてるだけなのですが(汗

NUnit Addin for Visual Studio.NET

ちょっと気になったのでメモ.Visual Studio用のxUnitお助けツール.この辺のスクリーンショットを見ると雰囲気がわかるかも?

#ますますVisualStudioにリファクタリングブラウザが欲しくなってくる罠...

Ruby: The DoubleCross

Rubyといっても言語のRubyではなく,ATI Technologies Inc.でおなじみのRubyが大活躍のデモムービー.

今年のSIGGRAPH2004animation theaterで上映されているみたいです.

sqlite-rubyを使ってみるテスト

ツッコミをいただきましたので,こちらでも試してみました.

	#!/usr/bin/env ruby

	require 'sqlite'
	require 'time'

	$file = 'test.db'
	$number = 1000

	def getDB
	        SQLite::Database.new( $file, 0 )
	end

	def createTest
	        STDOUT.print "pid=#{Process.pid} start createTest()\n"
	        db = getDB()
	        db.execute( "create table test1( id_name integer primary key, name text );" )

	        # insert test data...
	        0.upto( $number ) { |i|
	                db.execute( "insert into test1(id_name,name) values(#{i},\"ほげ#{i}\")" )
	        }
	        db.close()
	end

	def selectTest()
	        STDOUT.print "pid=#{Process.pid} start selectTest()\n"
	        begin
	                db = getDB()
	                db.execute( "select id_name, name from test1;" ) do |row|
	                        # STDOUT.print "  %10-s %10-s \n" % [ row['id_name'], row['name'] ]
	                end
	                db.close()
	        rescue Exception => e
	                STDOUT.print "pid=#{Process.pid} exception in selectTest... e=#{e.to_s}\n"
	        end
	        STDOUT.print "pid=#{Process.pid} finish selectTest()\n"
	end

	def updateTest()
	        STDOUT.print "pid=#{Process.pid} start updateTest()\n"
	        begin
	                0.upto( $number ) { |i|
	                        #print "pid=#{Process.pid} updateTest() i=#{i}\n"
	                        db = getDB()
	                        sql = "update test1 set name=\"ほげほげ-#{i}-#{Time.now.xmlschema}\" where id_name=#{i}"
	                        db.execute( sql )
	                        db.close()
	                }
	        rescue Exception => e
	                STDOUT.print "pid=#{Process.pid} exception in updateTest... e=#{e.to_s}\n"
	        end
	        STDOUT.print "pid=#{Process.pid} finish updateTest()\n"
	end

	#
	File.delete( $file ) if File.exist?( $file )

	#
	createTest()
	selectTest()
	Process.fork { updateTest }
	20.times {|n| Process.fork { selectTest } }
	Process.waitall

ロックがかかっている最中に何かしようとすると,例外が飛んでくるみたいですね...

んー,やっぱりロックが解除されるまで待つような実装を, 自前で用意したほうが良さそうですね(笑

#SQLite3のを見ていると, この辺が改善されているような事が書いているような気がするのですが, DBD::SQLiteがSQLite3に対応してないしなぁ...

本日のツッコミ(全1件) [ツッコミを入れる]

TIP [いま、人柱ノートPCにインスコ中ですー。 ぜんぜん終わらないよぉ。]


2004-08-13

13日の金曜日

というよりも,いつの間にか今週が終わりそうなことに気がついて,あせっていたり..._| ̄|○

試験問題

を見て,なんとなくFlashで作ってみたり.こちら

久しぶりにActionScriptのリファレンスマニュアルを見ながら作ったので,作成時間は約1時間ぐらい.試験は不合格だなぁ...

Flashなので描画オブジェクトの数が増えてくると,かなり表示が重くなってきます.ある意味ベンチマークソフト?

#モンテカルロ法(Monte Carlo Methods)は乱数の生成がかなり重要だったり.メルセンヌ・ツイスターとか...(^^;

WindowsXP SP2 その後

結局,会社で使ってるVirtualPCの中で塩漬けになっていたWindowsXPにSP2を入れてみました.何もせずに放置していたXPだったので,インストール前には「7日以内にライセンス認証してください」と表示されていたのですが,なぜかインストール後には「60日以内にライセンス認証してください」と元に戻ってるし...

それ以外に関しては,今のところは不具合なく使うことができている様子.

以下,さわっていて気がついたことのメモ

  • コントロールパネルの項目で,Windowsファイアウォール,セキュリティーセンター,ワイヤレスネットワークセットアップウイザードが増えてる
  • [コントロールパネル]->[ネットワーク接続]->[プロパティ]->[詳細設定]の内容が変わってる
    • ファイアーウォールの設定が[Windowsファイアウォール]へ移動している
  • [コントロールパネル]->[システム]->[詳細設定]->[パフォーマンスの設定]->[データ実行防止]が増えている
    • ここでデータ実行防止(DEP)の設定を行うことができる
  • [コントロールパネル]->[システム]->[自動更新]の内容が変わっている
  • WindowsUpdateをしたときに表示される内容が変わっている

2004-08-14

ねこ

寝そべっていたねこ


2004-08-15

涼しい一日

昨日とうってかわって涼しい一日.近所のスターバックスでPCをさわりつつコーヒーを飲む.

んー?

amritaっていまどうなってるのかな...?


2004-08-16

WindowsXP SP2を適用するとnmapが動かなくなるという例の件

少し疑問に思ったので,試しに昔作ったWinPcapを使ったアレを動かしてみると... 手元のSP2を適用したマシン上ではちゃんと動作する様子.どうもWinPcapを使っていると生パケットの送出はできるみたい.

で,nmapwin_1.3.0_src.zipのソースをなんとなく見てみると...

socket(AF_INET, SOCK_RAW, IPPROTO_RAW)のソケットを使った生パケットの送出NG
WinPcapのPacket.dllを使った生パケットの送出OK

のような気がするのですが,--win_helpで出てくるWindows特有のオプションの使い方が良くわからなかったり...(汗

#socket(AF_INET, SOCK_RAW, IPPROTO_RAW)ってundocumentedな使い方だったと思うので,SP2で使えなくなっても文句は言えないような気はするのですが...

本日のツッコミ(全3件) [ツッコミを入れる]

けん [nmapwinは古いから www.insecure.org/nmap/dist/ の方が。 nmap-3.55-SP..]

よぎ〜 [情報ありがとうございます.m(_ _)m  早速nmap-3.55.tgzの中を見たところ,winip.cのwin..]

hiro-t [パッチはきわめてシンプルでした。 http://silverstr.ufies.org/blog/archives/..]


2004-08-17

先生とパソコン

どちらかというと,Squeakの方に興味があったりして...

#こんなことを書くのはActionScriptに飽きてきたから?(汗

SecSunbath のまとめ

最後にリブートしたのは,先客さんを追い出す意味もあったり(笑

Referer spam

なんだかすごい勢いで来てるんですけど...


2004-08-18

あー

自宅のテレビ壊れた...

WindowsXP SP2のデータ実行防止(DEP)

DEPが有効だと,JavaみたいなJITな物が動かなくなるような気がしたので この辺りを 読んでみると,

On 32-bit versions of Windows, DEP is applied to the stack by default.

なんて書いているので,heapには適用されないのかな...?

...というわけで,確認のために息抜きで作ったテストプログラムです.

実行前にソースコードをよく読んで,プログラムの趣旨を十分理解した上で使用してください.自分自身でバッファーオーバーフローを起こしてnotepad.exeを起動します.

MagpieRSS

GREEでのRSS表示ってこれ使ってるのね.PHP用のRSSパーサー.


2004-08-20

__asm{}

DEPTest.exeみたいな変なことしなくても, インラインアセンブラで直接StackとかHeap上の コードをコールすればいいじゃないか...と,ふと思い出す.

...で,また息抜きで作ったテストプログラム

今度はStackとHeapの両方で試せます.

NXTEST

↑を作った後に見つけたツール.DEPのテストツールだそうです.

#わざわざ作って試さなくてもよかったじゃないの..._| ̄|○

で,

id:SANZさんのところ経由でここを見ていたら,

アプリケーションで実行可能メモリが必要な場合は、Virtual* メモリ割り当て関数のメモリ保護引数で PAGE_EXECUTE、PAGE_EXECUTE_READ、PAGE_EXECUTE_READWRITE または PAGE_EXECUTE_WRITECOPY を指定して、適切なメモリにこの属性を明示的に設定しなければなりません。malloc() 関数と HeapAlloc() 関数を使うヒープ割り当ては実行可能ではありません。

と書いてありました.JITとかで実行可能な領域が欲しい場合はVirtualAlloc()とかVirtualProtect()でPAGE_EXECUTE_READWRITEとかの属性を指定してメモリを確保すればいいのかな...?


2004-08-23

んー

なんだか罠にはまってしまったような感じ...(;´Д`)

VirtualPC 2004上でWindowsXP SP2を動かすと遅くなる?

各メーカー別Windows XP Service Pack 2 関連情報経由でこの辺より.

やっぱりDEPでサービスとかが動いているから遅いのかな?

Flash Playerって...

知らなかったのですが,クライアント側のPCにデータを保存できるのですね.Flash TechNote : ローカル Shared Object とはを参照のこと.

WindowsXPとかの場合,通常,

	%USERPROFILE%\Application Data\Macromedia\Flash Player\

以下にディレクトリがいろいろ作成されてデータが保存される様子.

なんだかCookieのかわりに使われそうな機能だなぁ...

本日のツッコミ(全7件) [ツッコミを入れる]

あららぁ [FlashCookieでfoo.txtを知らないうちに送りこまれた経験があります。かなり冷や汗でした。]

あららぁ [http://mlsecurity.com でMindwarper氏が昔Exploitを公開していたような気がします..]

あららぁ [あ、ここです。http://www.mlsecurity.com/ie/ie.htm]

あららぁ [サードパーティーのcookieを拒否すると効かないような気も。]

よぎ〜 [この辺の話題でしょうか?->http://www.securityfocus.com/archive/1/34247..]

あららぁ [http://www.securityfocus.com/archive/1/342474 あたりでは、userがわ..]

あららぁ出張中 [出張先でごにょごにょしたらFlashCookie周辺で以下のようなファイルが生成されnotepadで開けました。(W..]


2004-08-24

Flash Player ヘルプ : 設定マネージャ

Windows環境では,Flash Playerの上で右クリックをするとサイト毎の個別の設定はできるのですが, Flash Playerの共通の設定ってどこから変更できるの?と思って探していたら見つけたサイト.

ここのサイトを表示しないと設定が変更できないという仕様は,何となく変な感じがしないでもない...


2004-08-25

というわけで

ActionScript三昧の日々...

#ActionScript2.0ってECMAScript4に沿った言語仕様になってるのね.

WindowsXP SP2のファイアウォール機能を有効にしていると...?

そういえば,ブロードキャストしてネットワーク上に 同一シリアルを使用しているアプリが存在しているかどうかを チェックするようなアプリがあったような気がするのですが, WindowsXP SP2を入れるとこの手法が通用しなくなるような気がしないでもない...

ブロックされるの図

脱線...

Webで調べ物をしている最中にふと気がつくと,いつの間にか脱線して全然関係ないサイトを見ていることがあったりします.

Flashに関する調べ物をしていると,見つけたゲームでついつい遊んでしまう罠...(汗

で,今日も小一時間遊んでしまったFlashのゲーム -> 「艦砲射撃!」

本日のツッコミ(全2件) [ツッコミを入れる]

みゃー [20日になったよー(謎 Flashゲームキケソだよねー。http://www.com-th.net/relax/fi..]

よぎ〜 [そしてまた脱線してしまう罠...(汗]


2004-08-26

ぅー

強烈なリンク絨毯爆撃でapacheが止まってたし...

UAが"Java/1.4.1_02"って、最新の1.4.1_07とか1.4.2_05 じゃないところが、やる気の無さが伝わって来てイカス(笑


2004-08-27

ゴム足

手持ちのCF-W2のゴム足が1つ取れてしまってぐらぐらするよ...

ゴム足だけって買うことできるのかな?

パワーアップの季節?

今日もDoSアタックみたいなリンク絨毯爆撃が来てました.

今の環境だとtDiaryにアクセスが集中するとちょっとつらくなってくるので,そろそろサーバ環境をパワーアップしたいなぁ,と思う今日この頃.

罠に

はまってしまった人をちらほら見かけたり.(^^;

Eclipse大好き

社内の別件のお手伝いで,久しぶりにEclipseを使って小一時間ほどJavaプログラミングをする.

Eclipseって,やっぱり使っているときのグルーブ感が心地いい.

本日のツッコミ(全2件) [ツッコミを入れる]

TIP [EclipseでPerlやってまーす。]

よぎ〜 [EPICは使ったことないんだよなぁ...最近Perlやってないし(汗]


2004-08-28

ふと疑問に思ったこと,

あまりこの辺の処理は詳しくないのですが, HTML中のJavaScriptを無効にするための処理を行う際, 単に<script>〜</script>を除去しているだけだと,

	<html>
	<body>
	<scri<script>window.alert('ダミー')</script>pt>
	window.alert('テスト')
	</scr<script>window.alert('ダミー')</script>ipt>
	</body>
	</html>

	※HTML的にはかなりおかしいです

というデータを処理すると,

	<html>
	<body>
	<script>
	window.alert('テスト')
	</script>
	</body>
	</html>

という結果になって"window.alert('テスト')"の部分が 有効になることがあるのかな?なんて思ったり...

HTMLから<script>〜</script>がなくなるまで処理を繰り返せばいいのかな?

で,なぜこれを思ったかというと,WebアプリでRSSリーダを自分で作る際, CDATAでcontent要素を出力するRSS を表示する際に,処理が面倒くさそうだなぁ...なんて思ったからだったり.(^^;

JavaScriptといえば...

GMailのUIが鬼のようなJavaScriptで構成されていて,かなーりびっくり.

Googleではこの辺のJavaScriptをハンドリングするための独自のフレームワークを作っているのかな?

で,

本当はいろいろ期限がせまっていて余裕がないはずなのに,電車の中で↑のようなことを思い浮かべつつ現実逃避...


2004-08-29

現在,近所のスターバックスで

作業中,作業中,作業中...

WEBrick

Lightweight Language Weekendで 少し話を聞いて気になっていたので,息抜きにちょっとだけテスト.

	#!/usr/local/bin/ruby
	require 'webrick'
	include WEBrick

	# settings
	document_root = Dir::pwd + '/htdocs'
	debug_log = Dir::pwd + '/logs/debug_log'
	access_log = Dir::pwd + '/logs/access_log'

	# TestServlet class
	class TestServlet < HTTPServlet::AbstractServlet
	  def do_GET(req, res)
	    res['Content-Type'] = "text/html"
	    res.body = <<-EOS
	        <html>
	        <body>
	        test,test,test.....
	        </body>
	        </html>
	        EOS
	  end
	end

	# create server
	s = HTTPServer.new(
	                   :Port => 2000,
	                   :DocumentRoot => document_root,
	                   :MaxClients => 3 ,
	                   :ServerSoftware => 'Apache(Linux)',
	                   :Logger => Log.new( debug_log, WEBrick::Log::DEBUG ) ,
	                   :AccessLog   => [
	                     [ $stdout, AccessLog::COMBINED_LOG_FORMAT ],
	                     [ File.new( access_log, 'w+' ), AccessLog::COMBINED_LOG_FORMAT ]
	                   ]
	)

	# mount servlets
	s.mount( '/test', TestServlet )

	# start http server
	trap("INT"){ s.shutdown }
	s.start

なんだかJettyみたいで, 好感持てるなぁ(笑


2004-08-30

ActionScriptのButtonオブジェクト

どうしてこのオブジェクトだけthisは自分自身じゃなくて,親のMovieClipを指しているのかよくわからん.ものすごく変なような気がするんですけど...

今日,小一時間ほどはまってしまったじゃないですか...(^^;

SoftEther による通信を検出または自動遮断するソフトウェア "SoftEther Alert" および "SoftEther Block" の無償提供を開始(SoftEther.com)

とりあえずSoftEtherって,プロトコルだけでも仕様を公開してほしいような気がしないでもない.

山崎バニラ

自宅に帰ってきてTVをつけていたら,突然大正琴の音色と共に聞こえてきたちょっと気になる声.

へぇー,活弁士さんなんだー.

Debian GNU/Linux Expert [デスクトップユーススペシャル]

ヨドバシの書籍コーナーで購入.個人的にはSubversionのところがコンパクトにまとまっていてうれしいかも?


2004-08-31

桃栗3年,プラットフォーム10年?

プラットフォーム登場した年(リリース)URL
Linux1991年http://www.linux10.org/history/
Windows(NT系列)1993年http://www.microsoft.com/presspass/features/1998/winntfs.asp
Ruby1993年http://www.ruby-lang.org/ja/20030224.html
Java1995年(前身のOakは1991年)http://java.sun.com/features/1998/05/birthday.html
.NET FrameworkVisualStudio.NET 2002が発売されたのは2002年

と,普段使ってるプラットフォームって大体10年ぐらい歴史があるわけで, .NETが浸透するのは, 2012年ごろなのかなぁ...なんて思ったり.(^^;

プログラミング言語の歴史をみているとなかなか楽しい.

HagakiPC

MYCOM PC WEBより,はがきサイズの小さなPC.ちょっと気になったのでメモ.

ふと,OQOはどうなっているのか気になったり...(^^;

あー

8月も終わりですなぁ..._| ̄|○

Tempura - TEMPlate Utility for Ruby Application

Tempura は、XML(XHTMLなど)で書かれたテンプレートと実データ(任意のオブ ジェクト)を結び付け、生きたXML文書を生成するための、いわゆるテンプレー トライブラリです。オブジェクト指向スクリプト言語Ruby用のライブラリとし て実装されています。

付属のサンプルを見たところいい感じだったので,ちょっと使ってみようかな?CGIでも使えるし,Divのフレームワークからでも使える様子.セッションはCGI::SessionとかDivについているTofuを使うような感じ.

ん?Divのセッションって,セッションがタイムアウトして消滅するときのイベントハンドラ(?)って登録しておくことできるのかな...?

追記

↑って [ruby-list:38493] Re: デストラクタについてみたいにfinalizerを登録するような形でいいのかな?とりあえず,後で試してみるためのメモ.


トップ 最新 追記

2003|01|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|
2010|01|02|03|