SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
実践ウイルス検知
プログラミング
黒林檎
はじめに
A『ライブラリ使えば簡単に出来ちゃう!』
Q『初心者でも検知プログラミング出来るん?』
@怖い人たちへ

タイトルでマルウェアという表記を使って無いのはあえてです。
ClamAVを使おう
Clam AntiVirus (クラム・アンチウイルス。略称)
Clam AVClam AntivirusはTomasz Kojm等によって
開発・メンテナンスされているLinuxやBSD、Mac OS Xな
ど各種UNIX系のシステムで動作するアンチウイルスソフト
です。シグネチャによるパターンマッチング方式を採用して
いて、2004年5月27日の時点で約21,694種類のウイルス
に対応しています。GPLライセンスに従って利用すること
ができるオープンソースのソフトウェアです。
http://ja.wikipedia.org/wiki/Clam_AntiVirus
Clamav機能
コマンドライン版スキャンツール

clamscan
データベース アップデートツール

freshclam
マルチスレッドで実行可能なデーモン

clamd
pyclamavを使おう
#pyclamavとは?
pyClamAVはCで書かれたlibclamavへの結
合する事が出来るライブラリ。
効率的かつ簡単な方法でpythonソフトウェア
にウイルス検出機能を追加することができます。
http://packages.ubuntu.com/ja/precise/python-pyclamav
first
sudo apt-get install python-clamav

freshclam
https://pypi.python.org/pypi/pyclamav
http://xael.org/norman/python/pyclamav/
How to..
sudo apt-get install python-clamav
freshclam
python
import pyclamav
pyclamav.scanfile(“malware")



[*]正常動作すれば

malware -> (1, 'Win.Trojan.Agent-66532')

No malware -> (0,’ ’)
\_(・ω・`)ココ重要!
はじめての検知
バックドアマルウェア

(添付:09)
http://totalhash.com/search/
PYCLAMAVの流れ
[1]import pyclamav
[3]pyclamav.scanfile(“ファイル”)
[2]シグネチャを読み込む
作成したファイルの削除と結果の表示
pyclamav.scanfile()
ディレクトリ指定でスキャン出来ない
そこでdirchaheを使用してディレクトリ内のファイル名を取得
scan(file
デフォルト実装
コマンドライン

引数など確認
スキャン関数
[0]拡張
try:
ret = pyclamav.scanfile(file)
!
else:
if ret[0]==0:
処理
if ret[0]==1:
処理
(1, 'Worm.Sober.G')
integerが
0か1か判断
this is integer !!
ret[0]が1の場合はマルウェアと考え処理する
string
[1]拡張
HTML Parser
(1,ここの値)を検索
[1]拡張実行
demo
シグネチャ追加
Let’s Try !!
気になった人は以下検索
clamd
virustotal API
今回はPythonを使用しましたが、自分の好き
な言語で好きなライブラリを探してみるのも良
いと思います。

Contenu connexe

Tendances

漏れのある抽象化の法則
漏れのある抽象化の法則漏れのある抽象化の法則
漏れのある抽象化の法則
hayabusa333
 
フリーでできるセキュリティ インフラ(Nessus)編
フリーでできるセキュリティ インフラ(Nessus)編フリーでできるセキュリティ インフラ(Nessus)編
フリーでできるセキュリティ インフラ(Nessus)編
abend_cve_9999_0001
 
S92 Microsoft Azure SLA について
S92 Microsoft Azure SLA についてS92 Microsoft Azure SLA について
S92 Microsoft Azure SLA について
Microsoft Azure Japan
 

Tendances (20)

Nmap 9つの真実
Nmap 9つの真実Nmap 9つの真実
Nmap 9つの真実
 
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
 
漏れのある抽象化の法則
漏れのある抽象化の法則漏れのある抽象化の法則
漏れのある抽象化の法則
 
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
 
0からわかるAlfresco
0からわかるAlfresco0からわかるAlfresco
0からわかるAlfresco
 
IT エンジニアのための 流し読み Windows 10 - 超概要!Windows Defender シリーズ
IT エンジニアのための 流し読み Windows 10 - 超概要!Windows Defender シリーズIT エンジニアのための 流し読み Windows 10 - 超概要!Windows Defender シリーズ
IT エンジニアのための 流し読み Windows 10 - 超概要!Windows Defender シリーズ
 
ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修
 
PHPの今とこれから2021
PHPの今とこれから2021PHPの今とこれから2021
PHPの今とこれから2021
 
Nessusの仕組み / How Nessus works
Nessusの仕組み / How Nessus worksNessusの仕組み / How Nessus works
Nessusの仕組み / How Nessus works
 
Grafana Lokiの Docker Logging Driver入門 (Docker Meetup Tokyo #34, 2020/01/16)
Grafana Lokiの Docker Logging Driver入門 (Docker Meetup Tokyo #34, 2020/01/16)Grafana Lokiの Docker Logging Driver入門 (Docker Meetup Tokyo #34, 2020/01/16)
Grafana Lokiの Docker Logging Driver入門 (Docker Meetup Tokyo #34, 2020/01/16)
 
フリーでできるセキュリティ インフラ(Nessus)編
フリーでできるセキュリティ インフラ(Nessus)編フリーでできるセキュリティ インフラ(Nessus)編
フリーでできるセキュリティ インフラ(Nessus)編
 
たのしいPwn 公開用
たのしいPwn 公開用たのしいPwn 公開用
たのしいPwn 公開用
 
AWS Black Belt Techシリーズ AWS Data Pipeline
AWS Black Belt Techシリーズ  AWS Data PipelineAWS Black Belt Techシリーズ  AWS Data Pipeline
AWS Black Belt Techシリーズ AWS Data Pipeline
 
LINE のUI自動テスト事例
LINE のUI自動テスト事例LINE のUI自動テスト事例
LINE のUI自動テスト事例
 
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
講演資料: コスト最適なプライベートCDNを「NGINX」で実現するWeb最適化セミナー
 
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
 
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
 
Rubyのエラーをちょっと整理(初級者向け)
Rubyのエラーをちょっと整理(初級者向け)Rubyのエラーをちょっと整理(初級者向け)
Rubyのエラーをちょっと整理(初級者向け)
 
S92 Microsoft Azure SLA について
S92 Microsoft Azure SLA についてS92 Microsoft Azure SLA について
S92 Microsoft Azure SLA について
 
コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活
 

En vedette

自動販売機ハッキングLt
自動販売機ハッキングLt自動販売機ハッキングLt
自動販売機ハッキングLt
黒 林檎
 
黒林檎春休み妄想日記[不正送金編]
黒林檎春休み妄想日記[不正送金編]黒林檎春休み妄想日記[不正送金編]
黒林檎春休み妄想日記[不正送金編]
黒 林檎
 
Kobe virtualrootkit
Kobe virtualrootkitKobe virtualrootkit
Kobe virtualrootkit
黒 林檎
 
Vagrant(私立キャンプlt)
Vagrant(私立キャンプlt)Vagrant(私立キャンプlt)
Vagrant(私立キャンプlt)
黒 林檎
 
現実世界をハックせよ!
現実世界をハックせよ!現実世界をハックせよ!
現実世界をハックせよ!
Tajima Itsuro
 
Line(私立キャンプ)
Line(私立キャンプ)Line(私立キャンプ)
Line(私立キャンプ)
黒 林檎
 
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
Saya Katafuchi
 

En vedette (19)

自動販売機ハッキングLt
自動販売機ハッキングLt自動販売機ハッキングLt
自動販売機ハッキングLt
 
黒林檎春休み妄想日記[不正送金編]
黒林檎春休み妄想日記[不正送金編]黒林檎春休み妄想日記[不正送金編]
黒林檎春休み妄想日記[不正送金編]
 
pbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックスpbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックス
 
Virtual rootkit
Virtual rootkitVirtual rootkit
Virtual rootkit
 
Kobe virtualrootkit
Kobe virtualrootkitKobe virtualrootkit
Kobe virtualrootkit
 
Vagrant(私立キャンプlt)
Vagrant(私立キャンプlt)Vagrant(私立キャンプlt)
Vagrant(私立キャンプlt)
 
現実世界をハックせよ!
現実世界をハックせよ!現実世界をハックせよ!
現実世界をハックせよ!
 
[春期]私立プログラミングキャンプ
[春期]私立プログラミングキャンプ[春期]私立プログラミングキャンプ
[春期]私立プログラミングキャンプ
 
Line(私立キャンプ)
Line(私立キャンプ)Line(私立キャンプ)
Line(私立キャンプ)
 
私立キャンプ
私立キャンプ私立キャンプ
私立キャンプ
 
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
マルウェア解析講座そのいち〜仮想環境下では暴れないけど質問ある?〜
 
VMware NSX で作る VDI 環境のファイアウォール
VMware NSX で作る VDI 環境のファイアウォールVMware NSX で作る VDI 環境のファイアウォール
VMware NSX で作る VDI 環境のファイアウォール
 
マルウェア通信検知手法におけるUser-Agentの有効性の一考察
マルウェア通信検知手法におけるUser-Agentの有効性の一考察マルウェア通信検知手法におけるUser-Agentの有効性の一考察
マルウェア通信検知手法におけるUser-Agentの有効性の一考察
 
VMware的インフラ仮想化の世界
VMware的インフラ仮想化の世界VMware的インフラ仮想化の世界
VMware的インフラ仮想化の世界
 
Edomae 2015 - マルウェアを解析してみよう
Edomae 2015 - マルウェアを解析してみようEdomae 2015 - マルウェアを解析してみよう
Edomae 2015 - マルウェアを解析してみよう
 
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
 
マルウェア分類に用いられる特徴量 Kaggle - Malware Classification Challenge勉強会
マルウェア分類に用いられる特徴量	 Kaggle - Malware Classification Challenge勉強会マルウェア分類に用いられる特徴量	 Kaggle - Malware Classification Challenge勉強会
マルウェア分類に用いられる特徴量 Kaggle - Malware Classification Challenge勉強会
 
Pythonで動かして学ぶ機械学習入門_予測モデルを作ってみよう
Pythonで動かして学ぶ機械学習入門_予測モデルを作ってみようPythonで動かして学ぶ機械学習入門_予測モデルを作ってみよう
Pythonで動かして学ぶ機械学習入門_予測モデルを作ってみよう
 
ハッキング実演
ハッキング実演ハッキング実演
ハッキング実演
 

Plus de 黒 林檎 (9)

Wi-Fi電球ハッキング-バックドア経由での操作-
Wi-Fi電球ハッキング-バックドア経由での操作-Wi-Fi電球ハッキング-バックドア経由での操作-
Wi-Fi電球ハッキング-バックドア経由での操作-
 
実践IoTペンテスト
実践IoTペンテスト 実践IoTペンテスト
実践IoTペンテスト
 
IoTSecJP
IoTSecJPIoTSecJP
IoTSecJP
 
総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~
総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~
総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~
 
IoTSecJP(公開版)
IoTSecJP(公開版)IoTSecJP(公開版)
IoTSecJP(公開版)
 
続・IoT診断
続・IoT診断続・IoT診断
続・IoT診断
 
IoT診断入門
IoT診断入門IoT診断入門
IoT診断入門
 
Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]
Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]
Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]
 
スライド
スライドスライド
スライド
 

ウイルス検知プログラミング