5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ウィルスチェッカ作りたいんだが・・・

1 :デフォルトの名無しさん:2006/12/03(日) 23:39:13
何もノウハウが無い。
そして、参考書籍も参考ホームページもプログラムも何も無い。

誰か、俺にウィルスチェッカの作り方を手取り足取り教えてくれ。

2 :デフォルトの名無しさん:2006/12/03(日) 23:42:05
そんなもん作れないだろう…

3 :デフォルトの名無しさん:2006/12/03(日) 23:42:33
>>2
その心は?

4 :デフォルトの名無しさん:2006/12/03(日) 23:50:43
ノートン先生によるとwshは全部ウイルスだそうだから
拡張子が *.vbs, *.js のファイルはすべてウイルスだ。

5 :デフォルトの名無しさん:2006/12/03(日) 23:56:11
ふむ、どうやら2chでもわかる人はいないか・・・
この分野需要あると思うんだけどなぁ。
こうも参考文献が無いのも変な感じだ。

6 :デフォルトの名無しさん:2006/12/04(月) 00:03:04
>>1
http://www.clamav.net/

【AntiVirus】 アンチウィルスソフト総合スレ
http://pc8.2ch.net/test/read.cgi/unix/1046547211/

ウィルスかどうかを判定する一元的な方法も無いし、全てのウィルスを
事前に入手する事も不可能だから、個人では無理。

7 :デフォルトの名無しさん:2006/12/04(月) 00:32:09
オープンソースなセキュリティソフト探してみては?

って、探してないオレが言うのもなんだが、
スパイウェアチェックのオープンソースとかはあるんじゃ!?

あったとしたら、基本のロジックくらいは・・・(ってないか!?

それから、個別のウィルスうんぬんって話は、ウィルス定義の問題だろうなぁ
って訳で、
きっと、定義を作成したらヒューステリック(だっけか?w)あたりのロジックは別として、
個別のファイルの中に入って、個別の定義に当てはまるか否かのチェックロジック部分が判れば、
スレ主としてはOKなんじゃないのかぃ?

8 :7:2006/12/04(月) 00:34:45
あぁ・・・手取り足取りか・・・

最近さ、セキュリティソフト業界の求人も増えてるわけだし、
アセンブラや逆汗・デバッガの知識をそれなりに習得して就職しちまうのが早いんじゃ!?w

9 :デフォルトの名無しさん:2006/12/04(月) 00:47:44
>>8
んー。
なんだろ、例えばトロイに当てはまる動作をするプログラムとかを
メモリもしくはHDDに呼び込んだらそれを発見するとか、そういう
基本的なメソッドを知りたいんだよね、まずは。

そこからしてどう手をつければいいかプログラム中級(?)の俺には
わからん。一応、アセンブラやCは使えるんだが。

10 :7:2006/12/04(月) 00:52:54
トロイにしろなんにしろ、
「特徴的な動作」ってのがあるわけで、
その動作・振る舞いを実現するロジックを実現する部分は、
プログラマやコンパイラに依存するわけだ。

ということは、
そのウィルス的なモノを実際に作ってみて、
その結果、どんなコードになっているのかを作り手の立場から理解していく必要があるんじゃないかな?

つまり、
まぁ、>>6が言うように、
一元的には・・・ って話です。

11 :デフォルトの名無しさん:2006/12/04(月) 00:56:29
>>10
手順はわかるんだ。
でも、その実現方法がわからない。

例えばトロイをつくったとして、その動作をするというのをどうやって調べるのか?
一度実行させて実行前状態と実行後状態を比較してみるのか、それともバイナリを読んで
事前に動作を知るのか。

前者はロールバックできるような環境さえ整えれば可能かもしれないけどあまり現実的じゃない。
後者が理想的だけどまさしく実現方法がわからない。

12 :7:2006/12/04(月) 01:05:14
オイラもそんなに詳しい訳じゃないの・・それ前提で・・播(゚∀゚)ネッ!!

でもさ、セキュリティパッケージによっては、
その後者を実現している訳ですよ。
たしかに前者は現実的じゃないわけだしネw

後者を実現する方法だってさ、
対象の振る舞いの特徴次第じゃないかなぁ・・・

「一元的には・・」って意味はさ、
つまり、
コーディング的な観点からや、
メモリ上での存在方法や処理方法までを含めた観点、
ネットワーク的な観点、
果ては、ソーシャル的な観点まで波及するわけだ。

あなたの知識はその全てを網羅した上で、
そのロジックがかかれているコードをアセンブラ的に見いだせるか否か?って話になってしまうわけで、
「実現方法」って話になると、
結論としては、やっぱり、「個人じゃ無理」ってコトなんじゃないかなぁ・・・

13 :デフォルトの名無しさん:2006/12/04(月) 01:05:24
>>1
ウィルスかどうかの判定はウィルスの種類毎に大きくことなるから一概には言えないけど
Windows用のアンチウィルスソフトを作りたいならまずはWindowsDDKをゲットしる。
そんでファイルシステムフィルタドライバを作ってそこで全てのファイルへのアクセスを
フックしてウィルスかどうか判断してウィルスならファイルへのアクセスをブロックしれ。

14 :7:2006/12/04(月) 01:09:45
>>13
前向きで惚れそうデス

15 :デフォルトの名無しさん:2006/12/04(月) 01:16:32
10年ぐらい昔、chなんとかとかいうDOSのウィルスを解析してワクチン作ったことがある。
こいつは、先頭にjumpを挿入して後ろにくっつくタイプだったと思う。
このとき、感染前と後で比較をしてウィルス部分を特定したが、元ファイルの数バイトを暗号化して
ウィルス部分に持っていた。ディスアセンブルして複合化部分を抜き出し
感染した実行ファイルからウィルスを駆除することに成功した。

このときのウィルスチェックルーチンは、先頭のjumpの有無、
後ろのウィルスコードの一部(16バイトぐらい)を検査し、合致すれば感染していると見なした。

未知のウィルスじゃなければこの方法で逝けるが
個人で大量のウィルスを解析してシグネチャを取るのは不可能だと思う。

って、未知のウィルスを検出する方法だったら、がんばって開発汁!
きっと大金持ちになれまつよ><b

16 :1:2006/12/04(月) 01:17:48
>>12
このプログラムを実行したら「ファイルをデリートする」と言う事を実行前に
知りたいとしたらどうすればいいのか。その方法を知ることは多分一元的解決
法ではないにしろ、この分野では基本の基本として大事なことだと思う。

漏れも現実的に有用なチェッカをつくろうとは考えていないよ。
ただ、そういうものも作れるようになりたいだけで。勉強したいだけ。
実際のウィルス駆除ソフト屋は24時間体制で後出しじゃんけん的に
ウィルスを追っているらしいから、土台個人で無理なのは重々承知。
この辺断っておけばよかったね。スマソ

>>13
WindowsDDKダウンロードできない・・・
てか何するものなのかもよくわからん。
英語読むか・・・

17 :7:2006/12/04(月) 01:23:58
>>16
まさに 13 がヒントになっているのじゃないかと思うわけだが、
一つだけツッコミ。

「英語が読めなきゃコノ業界はムリポ〜」
話せるようになれとは言わん。
リアルタイムで理解できるようになれとも言わん。
が、「英語で書かれている文章を読み解ける位になるぞ!」という執念や想い、
そして、それを実現する力があれば、
大概のコトは先駆者が居るモンだ。
それに追随していくコトが、あなたの力になると、オレは思うゾ!

18 :・15:2006/12/04(月) 01:24:39
ああそうだ、その頃は未知のウィルスに対抗する方法として全部の
実行ファイルのサイズと、CRCを書き出して一日一回全確認することで対抗してた。
だって、PC-98だったし。

メモリに常駐されると、だめそうだが。

19 :1:2006/12/04(月) 01:33:29
>>17
英語は別に苦じゃないんだけど。
Microsoftのリファレンスを前提知識少ない状態で読んで理解できたためしが
無いんだ、俺・・・orz

つか、卒論は全く別の分野やっとるからそんな本格的にやるつもりじゃないよ。
趣味と言うか好奇心と言うか。発作的に何かプログラム組みたいときってあるでしょ?
そんな感じでこのスレたてたんだけど。

>>18
PC-98・・・
大先輩ですな。
漏れはWinMEをゲームやりたくて買ってはじめてPCに触れました。
本格的に使ってるOSはUNIXという罠。しかもSolaris。

CRC書き出しってウィルス対策と関連があるんですか。
むぅ、奥が深いなぁ。

20 :7:2006/12/04(月) 01:36:49
1.メモリ上に存在するシステム各種に対してチェックをするために必要なコトは?
2.読み書きしようとするFAT上に存在する物理ファイルにアクセスする際、
 その処理が実行される前に、フックしてチェックするために必要なコトは?

って考えると、>>13 は2番を解決する一つの方法(唯一とは思わない)だと思うんだ。
あなたには、これらの解法を見いだす為のインスピレーションがあるんであれば、
あとはその実現するためのスキルを磨く努力をするのが良いんだよね。

いま、そのヒラメキが欲しいのであれば、
それをヒラメクための知識もありそうな訳だし、
とりあえずは>>13に乗るべく、
「あがいてみる」ってのが、趣旨に添ったオイラなりの回答。

いかがでしょ?


21 :7:2006/12/04(月) 01:41:45
>Microsoftのリファレンスを前提知識少ない状態で読んで理解できたためしが
たしかに・・w

あんなのはさ、
自分が「あがいた結果」を検証するために存在するモンだと思うわけです。
たたき上げのコーダー的なオイラとしては、
リファレンスの類なんて、自分の試行錯誤があって、初めて納得できるんだわさ・・
それは、オイラに予備知識がないから・・・ってのが主因なわけで、
学校や勤め先でそれなりの「学問的な知識」がある人にとっては、
最初からバイブルになり得るのかもしれないんですが・・・(・∀・)ニヤニヤ

22 :7:2006/12/04(月) 01:43:09
× 学校や勤め先でそれなりの「学問的な知識」がある人にとっては、
○ 学校や勤め先でそれなりの「学問的な知識を習得する機会」があった人にとっては、



23 :1:2006/12/04(月) 01:47:23
う〜ん、少なくとも俺にはならんね。
つか、これ学問的な知識いるんか?コンピュータは基本ScienceじゃなくてEngineering
だと思うんだが。
それにこの話自体凄い泥臭い感じがするし。

WindowsDDKの概念はわかった。
Filtering Driverを作るAPIみたいなものか。

24 :デフォルトの名無しさん:2006/12/04(月) 01:54:27
リファレンスの類を読むには必要さ、ある種の学問的な知識がさw

WindowsDDKがどんなモンか詳しくは知らんw
が、ファイルにアクセスする部分にフックさせなきゃ話にならないわけで、
>>13を信じるのであれば、
それを実現するために必要なドライバかその類が作れるDKなんだろうなぁ・・・

25 :デフォルトの名無しさん:2006/12/04(月) 01:57:57
http://www.xlsoft.com/jp/products/windriver/windriver.html

26 :1:2006/12/04(月) 02:00:42
>>24
そもそもファイルシステムフィルタドライバとやらがフックさせるものって書いてあるしね。
プロセス間通信を全てこのドライバを通して行うということか。
システムのスループット激オチしそうだ・・・

27 :15:2006/12/04(月) 02:06:21
>>CRC書き出しってウィルス対策と関連があるんですか。
感染するタイプなら、サイズと内容に変化があるはずだから未知のウィルスでもわかる。
また、記録してない実行ファイルが増えていると、危険なファイルの可能性有り
という、子供だまし化石テク


28 :デフォルトの名無しさん:2006/12/04(月) 02:08:18
>システムのスループット激オチしそうだ・・・
その辺は、セキュリティ向上<>ユーザビリティ向上 の命題ダワサ

最近のフレームワークを探せば、ほかの方法が見つかるかもしれないけど、
その辺は、インスピレーション次第ってコトだと思うわけです。

29 :デフォルトの名無しさん:2006/12/04(月) 02:12:09
またクソスレ建てたな>>1

30 :デフォルトの名無しさん:2006/12/04(月) 02:13:07
クソスレあげんな

31 :デフォルトの名無しさん:2006/12/04(月) 02:14:32
そんなアナタがアゲアゲ〜

な〜な〜ななな〜♪w

32 :1:2006/12/04(月) 02:14:46
>>27
感染タイプと言うのは適当な既存のファイルに取り付くと言う意味ですか?
それなら確かに有効かも。でもCRCじゃなくても更新日時見るだけでわかるような気も・・・

つか、確かに原始的ですがかなり有効かも。

33 :デフォルトの名無しさん:2006/12/04(月) 02:16:58
>>32
更新日時はすぐにでもいじくれる
根本的なこと聞くが



  何がウィルスなの?



  何がウィルスじゃないの?

34 :7:2006/12/04(月) 02:18:58
>>32
その辺、「一元的」って話の延長ですよ、ダンナさん。
更新日時なんて、○| ̄|_ =3  プッ って話デス。

「ナニをもってウィルスとするか」を考えるセンス、もっと大事にしてくださいね。

35 :15:2006/12/04(月) 02:21:11
感染するから、ウィルスなんだが・・・
サイズを合わせるタイプもあるはず。CRCのほうが確実かと。

36 :デフォルトの名無しさん:2006/12/04(月) 02:24:23
http://e-words.jp/w/E3839FE383A5E383BCE38386E383BCE382B7E383A7E383B3E59E8BE382A6E382A4E383ABE382B9.html

37 :基本的なこと:2006/12/04(月) 02:31:53
ウィルス:実行ファイルや、データなどに感染。
ワーム:感染しないが自己増殖する。
トロイ:感染しないが、主に起動後タイミングを見計らって破壊活動を行う。

現在はこれらの複合型とか、トロイが主流。

つーか、高度なウィルスすくないよなー。
馬鹿でも作れるトロイばっかだし。

38 :デフォルトの名無しさん:2006/12/04(月) 02:33:30
HDDを直読みしないと見つけられないウイルスもあるですよ

39 :13:2006/12/04(月) 02:40:57
ファイルシステムフィルタドライバを使ってないWindows用のアンチウィルスソフト
なんて聞いたことがない。その他のテクも使うにしてもこれは必須。
以前はWindowsDDKとは別にFSFKitを購入(日本円で10万ぐらい)しなければならんかったけど
今はWindowsDDKに統合されている。WindowsDDKについてはこっちのスレでも見れ。

WindowsDDK各種についてのスレ
http://pc8.2ch.net/test/read.cgi/tech/1049116134/


英語に関しては俺もろくにわからんながらにこの業界で足掻き続けてる。>>1も根性見せてみろ。
あと、アドバイスしとくと英文を全部正確に理解しようとするな。
そんなことしてたら確実に挫折する。

40 :デフォルトの名無しさん:2006/12/04(月) 02:43:26
>>37
BIOSは保護されてるしMBRも保護されてるし
後はOS依存しかないけれど、OSに食いつくハッカーいなくなってるし(Windowsがどんどん気持ち悪くなってきてる)
もうVBSとかIEとか周辺分野しかないですよ

41 :13:2006/12/04(月) 02:43:42
↑のスレにもあるがWindowsDDKはここからダウンロードできる。

414 名前:デフォルトの名無しさん[sage] 投稿日:2006/08/04(金) 15:35:58
いつの間にかDDKがダウンロードできるんだが
ttp://www.microsoft.com/whdc/devtools/ddk/default.mspx

Download the Windows Server 2003 SP1 DDK [236 MB ISO file]
Note: To download and use the DDK, you must burn the ISO file to a CD or DVD.

42 :デフォルトの名無しさん:2006/12/04(月) 02:53:48
2ちゃんねる:ヒトの心に感染。中毒を起こし、様々な症状が出る。

43 :デフォルトの名無しさん:2006/12/04(月) 02:58:04
>>1
clamavのソースでも見たらどうだ

44 :1:2006/12/04(月) 12:09:00
>>41
dクス
Windows2003 Server SP1か。
XPでも動くかな?

>>43
clamavってこれか。
http://clamav-jp.sourceforge.jp/
UNIX系のオープンソースウィルス駆除ツールか。

本家のDonation->Skillsを見たんだが開発者募集はかけてないみたいだな。
ドキュメント作成や他のユーザ補助をしてくれって事しか書いてないや。

最も、俺のレベルではとてもじゃないが開発陣には加われないけど。

45 :デフォルトの名無しさん:2006/12/04(月) 12:19:44
プログラム自体はたいしたことはないが問題はウィルスの定義ファイルを作ったりするところだと思われ
あれ自体は恐らくパターン解析をしているだけだからそれほどたいしたことはない
ただ、そのウィルスのパターンファイルを作ったりそれがウィルスであるということの定義をすることは
研究機関等が集めているんだろ?もう売ってんだから買えばいいのに・・・

46 :1:2006/12/04(月) 12:30:02
いままでの流れをまとめると、

パターン1
@プログラム実行

Aフィルタドライバによるウィルス定義に当て嵌まる不正動作検知

B動作停止・駆除

か、

パターン2
@バイナリリード(メモリ上 or HDD上?)

Aウィルス定義と一致する危険コード発見

B駆除

の2パターンがあるって事だよね。
とすると、手軽にウィルスチェッカつくった気分になるにはパターン1のテンプレート
作成かな?

47 :デフォルトの名無しさん:2006/12/04(月) 19:20:05
手軽じゃないがな。
サンドボックスとか調べてみそ。

48 :デフォルトの名無しさん:2006/12/04(月) 23:46:04
>>46
つまりVMを作ると
そこにプログラムを囲うと

すばらしく泣ける気がする

49 :デフォルトの名無しさん:2006/12/05(火) 02:01:42
今の先端技術だしな

50 :デフォルトの名無しさん:2006/12/05(火) 12:45:37
実行ファイル全てさくっと削除しちまえよ

51 :デフォルトの名無しさん:2006/12/05(火) 13:31:57
男らしいな

52 :デフォルトの名無しさん:2006/12/05(火) 13:32:14
ソレなんてウィルス?

53 :デフォルトの名無しさん:2006/12/05(火) 19:34:54
実行ファイルだけといわずハードディスク初期化でいいじゃん

54 :デフォルトの名無しさん:2006/12/05(火) 20:08:12
それは女々しいな

55 :デフォルトの名無しさん:2006/12/05(火) 21:32:38
そういう労力がかかってお金になる技術はあんまり表に出てこないね

56 :デフォルトの名無しさん:2006/12/06(水) 00:33:18
だって最先端だしな

57 :デフォルトの名無しさん:2006/12/06(水) 02:50:21
俺んち最北端ですが何か?

58 :デフォルトの名無しさん:2006/12/06(水) 13:16:38
おい>>1

まずてめーでウイルス作ってみろ


それとDDK使うならまずフィルタドライバじゃなくて普通のデバイスを動かす
デバイスドライバ作れ

話しはそれからだ

59 :デフォルトの名無しさん:2006/12/06(水) 16:11:32
最低底ですが何か?

60 :デフォルトの名無しさん:2006/12/11(月) 22:31:41
定期age

61 :デフォルトの名無しさん:2006/12/11(月) 22:38:13
AVG辺りの定義ファイルを解析して
自分でチェックすればよくね?

62 :デフォルトの名無しさん:2006/12/14(木) 18:33:56
ってゆうかavgを起動してウィルスチェックするプログラム作ればいいんでね?

63 :デフォルトの名無しさん:2006/12/15(金) 16:50:09
スーパーバッチプログラマーの出番か

64 :デフォルトの名無しさん:2006/12/16(土) 17:17:46
×ウィルス
〇ウイルス

65 :デフォルトの名無しさん:2006/12/16(土) 17:29:29
×ウイルス
○ビールス

66 :デフォルトの名無しさん:2006/12/16(土) 17:35:32
ヴァイラス

67 :デフォルトの名無しさん:2006/12/17(日) 00:22:52
×ウィルス
〇ウイルス

68 :デフォルトの名無しさん:2006/12/17(日) 02:17:28
×ウイルス
〇ウイノレフ、

69 :デフォルトの名無しさん:2006/12/17(日) 03:24:07
ういのれふ、ってなんだ?

70 :デフォルトの名無しさん:2006/12/17(日) 12:59:31
なんだぁ?
ウィって
酔っ払ってんのか?

71 :デフォルトの名無しさん:2006/12/17(日) 13:49:28
──┐
   │               [任天堂]
   │   J( '∀`)し       (´∀` ) <Wiiなら本体にソフト付けても安いよ
   │     (  )\('∀`)ノロロヾ(  )
   │     ||  (_ _)ヾ     ||


72 :デフォルトの名無しさん:2006/12/18(月) 11:58:41
ウィ〜
いまかえったよぉ

73 :デフォルトの名無しさん:2006/12/29(金) 04:37:58
VVirii

74 :デフォルトの名無しさん:2007/01/14(日) 17:26:19
新年あけま

20 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)