ivre使用:安裝配置

簡介

IVRE(又名DRUNK)是一款開源的網絡偵查框架工具蒲列,IVRE使用Nmap娄柳、Zmap進行主動網絡探測、使用Bro粮坞、P0f等進行網絡流量被動分析蚊荣,探測結果存入數據庫中,方便數據的查詢莫杈、分類匯總統(tǒng)計互例。

IVRE官方網站:https://ivre.rocks

GitHub:https://github.com/cea-sec/ivre

安裝

使用pip安裝

pip3 install ivre

這里開始使用python3來安裝

安裝mongodb

數據庫是必須要安裝的,在ubunt上安裝mongodb的方式可以參考如下鏈接:
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

大概的過程如下:

Import the public key used by the package management system.?

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

Create a list file for MongoDB.

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

操作系統(tǒng)是ubuntu 16.04LTS

Reload local package database

sudo apt-get update

Install the MongoDB packages.

sudo apt-get install -y mongodb-org

start mongodb

sudo service mongod start

configure

具體的配置方法可以參考如下鏈接:
https://github.com/cea-sec/ivre/blob/master/doc/INSTALL.md

可以只修改/etc/ivre.conf,增加如下內容:

GEOIP_PATH = "/usr/local/share/ivre/geoip/"                                             

DB Creation

按照下面的步驟操作即可:

$ ivre scancli --init
This will remove any scan result in your database. Process ? [y/N] y
$ ivre ipinfo --init
This will remove any passive information in your database. Process ? [y/N] y
$ ivre ipdata --init
This will remove any country/AS information in your database. Process ? [y/N] y
# ivre runscansagentdb --init
This will remove any agent and/or scan in your database and files. Process ? [y/N] y

注意要配置上面的GEOIP_PATH,否則后兩條命令執(zhí)行失敗

Get IP Data

# ivre ipdata --download
$ ivre ipdata --import-all --no-update-passive-db

到此理論上已經可用了筝闹,為了獲得可視化的效果媳叨,下面配置web server

web server

docker版本的ivre已經配置好了web server腥光, 拿來直接用就可以了。因為這里使用ubuntu配置的糊秆,需要自己修改配置文件武福。本地用的nginx作為web服務器。

修改配置文件

將如下連接的配置文件復制到/etc/nginx/sites-enabled里面重新啟動nginx即可痘番,注意不能和其他的server端口重復了捉片。
https://github.com/cea-sec/ivre/blob/master/docker/web/nginx-default-site

這樣配好之后可以打開頁面了,但是看不到動態(tài)的數據汞舱。

配置fastcgi

安裝fastcig

aptitude install fcgiwrap

config fastcgi

cp /usr/share/doc/fcgiwrap/examples/nginx.conf /etc/nginx/fcgiwrap.conf

至此基本上可以使用ivre的主動掃描功能了界睁。按照如下兩個步驟,就可以通過本地頁面看到掃描結果了兵拢。

$ sudo ivre runscans --routable --limit 1000

完成之后執(zhí)行如下命令:

$ ivre scan2db -c ROUTABLE,ROUTABLE-CAMPAIGN-001 -s MySource -r \
>              scans/ROUTABLE/up

在頁面上看到的結果如下:


ivre.jpg

安裝過程中碰到的問題翻斟。

MacOS上的安裝

MacOS和ubuntu的安裝有一些差別。
mongodb和nginx可以通過brew來安裝说铃,nginx的配置文件安裝好之后是放在/usr/local/share/etc/nginx目錄下面的访惜。這個熟悉MacOS系統(tǒng)的都知道。

這里重點說一下fcgiwrap的安裝

MacOS下使用fcgiwrap

首先需要先安裝fastcgi和fcgiwrap,這個通過brew就可以安裝了腻扇,

brew install fcgiwrap.

安裝好之后并不能直接用债热,需要做一些配置,可以參考如下的頁面:
https://www.nginx.com/resources/wiki/start/topics/examples/fcgiwrap/

這里大概說一下步驟:
先創(chuàng)建一個perl腳本幼苛,內容如下:

#!/usr/bin/perl

use strict;
use warnings FATAL => qw( all );

use IO::Socket::UNIX;

my $bin_path = '/usr/local/bin/fcgiwrap';
my $socket_path = $ARGV[0] || '/tmp/cgi.sock';
my $num_children = $ARGV[1] || 1;

close STDIN;

unlink $socket_path;
my $socket = IO::Socket::UNIX->new(
    Local => $socket_path,
    Listen => 100,
);

die "Cannot create socket at $socket_path: $!\n" unless $socket;

for (1 .. $num_children) {
    my $pid = fork;
    die "Cannot fork: $!" unless defined $pid;
    next if $pid;

    exec $bin_path;
    die "Failed to exec $bin_path: $!\n";
}

注意: 這里的my $bin_path = '/usr/local/bin/fcgiwrap'; 要替換成實際的fcgiwrap程序的位置窒篱。另外my $socket_path = $ARGV[0] || '/tmp/cgi.sock';中的/tm/cgi.sock要和前面配置的fastcgi的socket保持一致。

這樣執(zhí)行完上面的腳本之后會發(fā)現在/tmp目錄下多了一個cgi.sock文件舶沿。這個就是一個unixsocket墙杯。

這個時候可能還是不能訪問,打開nginx的日志會發(fā)現括荡,cgi.sock沒有權限高镐,簡單的方法就是將cgi.sock的權限修改成777.然后就OK了。

python版本號的問題

ivre中的geoiputils.py用了strip(b'/n')這樣的字符畸冲,導致在python3中運行出錯嫉髓。使用python2.7運行是OK的。

使用nginx的問題

需要安裝fastcgi, 不然不能獲取到存儲在數據庫中的掃描結果邑闲。

后續(xù)打算

ivre其實就是一個掃描的框架算行,將一些掃描的消息進行可視化展示。因為沒有安裝neo4j苫耸,flow方面的可視化展示目前也做不了州邢。后續(xù)還有一些簡答的實驗要做:

  • 1 裝上neo4j和bro,通過被動模式監(jiān)控本機的流量鲸阔。
  • 2 實驗更多ivre的主動掃描功能偷霉。
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市褐筛,隨后出現的幾起案子类少,更是在濱河造成了極大的恐慌,老刑警劉巖渔扎,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件硫狞,死亡現場離奇詭異,居然都是意外死亡晃痴,警方通過查閱死者的電腦和手機残吩,發(fā)現死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來倘核,“玉大人泣侮,你說我怎么就攤上這事〗舫” “怎么了活尊?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長漏益。 經常有香客問我蛹锰,道長,這世上最難降的妖魔是什么绰疤? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任铜犬,我火速辦了婚禮,結果婚禮上轻庆,老公的妹妹穿的比我還像新娘癣猾。我一直安慰自己,他們只是感情好余爆,可當我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布煎谍。 她就那樣靜靜地躺著,像睡著了一般龙屉。 火紅的嫁衣襯著肌膚如雪呐粘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天转捕,我揣著相機與錄音作岖,去河邊找鬼。 笑死五芝,一個胖子當著我的面吹牛痘儡,可吹牛的內容都是我干的。 我是一名探鬼主播枢步,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼沉删,長吁一口氣:“原來是場噩夢啊……” “哼渐尿!你這毒婦竟也來了?” 一聲冷哼從身側響起矾瑰,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤砖茸,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后殴穴,有當地人在樹林里發(fā)現了一具尸體凉夯,經...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年采幌,在試婚紗的時候發(fā)現自己被綠了劲够。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡休傍,死狀恐怖征绎,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情磨取,我是刑警寧澤炒瘸,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站寝衫,受9級特大地震影響顷扩,放射性物質發(fā)生泄漏。R本人自食惡果不足惜慰毅,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一隘截、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧汹胃,春花似錦婶芭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至宰掉,卻和暖如春呵哨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背轨奄。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工孟害, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人挪拟。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓挨务,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子谎柄,可洞房花燭夜當晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內容