開源蜜罐T-pot 19.03.3安裝和使用


前言

這兩年蜜罐技術被關注的越來越多,也漸形成低交互、中交互、高交互等交互程度的各類蜜罐,從WEB業務蜜罐、SSH應用蜜罐、網絡協議棧蜜罐到系統主機型蜜罐的各功能型蜜罐。小到一個Word文檔的蜜標,到一個系統級的服務蜜罐,再到多功能蜜罐組成的蜜網,大到包含流控制重定向分布式蜜網組成的蜜場。

這里將介紹一個開源多蜜罐平台,安裝一次系統,輕松使用里面多種蜜罐

T-Pot蜜罐是德國電信下的一個社區蜜罐項目,是一個基於Docker容器的集成了眾多針對不同應用蜜罐程序的系統,根據官方的介紹,每年都會發布一個新的版本。

蜜罐技術:本質上是一種對攻擊者進行欺騙技術,通過布置一些作為誘餌的主機、網絡服務或信息,誘使攻擊方對它們實施攻擊,從而可以對攻擊行為進行捕獲和分析

蜜罐一般是在隔離環境,攻擊者入侵后是在系統之上的系統中,攻擊者做的任何事情都記錄在系統中,以供分析

官方介紹:https://dtag-dev-sec.github.io/mediator/feature/2019/04/01/tpot-1903.html

官方github: https://github.com/dtag-dev-sec/tpotce

T-pot 19.03運行在debian(Sid)上,基於docker, docker-compose並且包括以下蜜罐的docker鏡像:
adbhoney,ciscoasa,conpot,cowrie,dionaea,elasticpot,glastopf,glutton、heralding,honeypy,honeytrap,mailoney,medpot,rdpy,snare,tanner
據介紹為了更接近滾對發布模型設計,此版本從ubuntu遷至debian

在19.03版本更新了一個共享T-pot數據功能,可通過SISSDEN門戶創建賬戶進行提交

 

上圖就是當前 T-Pot 最新版本的組成部分,T-Pot 可以理解成是這么多系統的一個整合。
下面將針對各個部分進行簡單的介紹

Elastic-Search

Elastic Search 一個性能十分強大的全文搜索引擎,他可以快速的進行海量數據的查詢

在 T-Pot 的實際應用中,各個蜜罐所產生的日志都會導入到 Elastic Search 中,因此可以使用 Elastic Search 來進行檢索,同時也可以使用他對數據進行各種復雜條件的查詢和導出等

Logstash

Logstash 用於接收從蜜罐傳遞過來的日志,然后對數據進行過濾和格式化后交由 Elastic Search 進行存儲和建立索引

Kibana

Kibana 用於對進行數據的可視化查詢,支持以柱狀圖、線狀圖、餅圖、旭日圖等等輸出各種圖形,也能通過時間序列對蜜罐日志某個特征的趨勢進行分析。

Head

Head 是一個網頁前端,主要用於與 Elastic Search 集群進行交互。

和上面的 Kibana 不同的是,他的可視化程度相對較低,但是更便於直接對數據進行操作,類似與 phpMyAdmin 的存在

Conpot

Conpot 是一個低交互式的工業控制系統的蜜罐,內置了一系列常見的工業控制協議,並且易於修改和拓展,盡其所能的欺騙攻擊者,以獲得攻擊者的最終目的

Cowrie

Cowrie 是一個中等交互式的 SSH / Telnet 蜜罐,設計上用來記錄暴力破解以及登錄后 Shell 執行的操作

主要功能有:

  • 提供了虛假的文件系統(類似 Debian5.0),並且可以進行文件的增加和刪除
  • 隨機增加某些文件的內容以便攻擊者使用 cat功能,例如 /etc/passwd
  • 提供 UML 兼容格式的回話日志,可供用來重放會話
  • 保存通過 wget 和 curl 下載的文件供后續的分析 

Dionaea

Dionaea 是一系列基於 Python 語言開發、libemu 作為 Shellcode 分析的蜜罐系統,支持多種不同協議,見下表

  • blackhole
  • epmap
  • ftp
  • http
  • memcache
  • mirror
  • mqtt
  • mssql
  • mysql
  • pptp
  • sip
  • smb
  • tftp
  • upnp

ElasticPot

ElasticPot 是一個 Elasticsearch 的蜜罐

eMobility

eMobility 是一個高交互式的蜜罐,針對的是下一代的交通基礎設施(充電樁系統),用於收集攻擊者的動機和方法。

系統主要包括中央充電系統、充電點以及模擬的用戶交易。

Glastopf

Glastopf 是一個 Python 語言開發的 Web 蜜罐,能提供各種基於漏洞類型的模擬

HoneyTrap

HoneyTrap 是一個低交互式的蜜罐,通過監聽 NFQUEUE 用戶態數據包,相當與就監聽了所有其他未監聽的端口

主要功能用於觀察攻擊者的行為,同時也可以解析攻擊的字符串,並且進行相應的下載保存

Mailoney

Mailoney 是一個 SMTP 蜜罐 

Rdpy

Rdpy 是一個用 Python 實現的 RDP 和 VNC 協議,可以用作服務端以及客戶端,同時也提供 RDP 的蜜罐,用於記錄 RDP 的過程

vnclowpot

vnclowpot 是一個低交互式的 VNC 蜜罐,主要用於記錄 VNC 的認證過程

Suricata

Suricata 是一個網絡 IDS、IPS 和 NSM 引擎,主要分析並記錄下連接中一些有用的信息

p0f

p0f 利用一系列復雜的流量指紋識別,被動的來識別 TCP/IP 通信的對方信息,例如可以識別出對方的系統、在線時間等

T-Pot提供了許多並行運行的蜜罐守護進程,並將網絡接口上捕獲的流量重新路由到最合適的開源蜜罐。
處理數據並將其存儲在本地ELK堆棧中。

一、安裝

  • 安裝要求

    6-8GRAM
    128G磁盤空間

  • 安裝模式

    標准安裝、傳感器安裝、 工業安裝、 收集器安裝 、 下一代安裝

    詳細信息見官方說明 https://github.com/dtag-dev-sec/tpotce#postinstallauto

提供三種安裝方式:

  •  裸設備安裝

  1、獲取ISO的兩種方式:

  •  ISO方式:
    • https://github.com/dtag-dev-sec/tpotce/releases/download/19.03/tpot.iso
  • 自建ISO方式:
    • 創建ISO鏡像要求:
      1. Debian 9.7或更新
      2. 4GB可用RAM
      3. 32G磁盤空間
      4. 互聯網連接
    • 創建ISO鏡像:
      1. 從github獲取T-pot
        • git clone https://github.com/dtag-dev-sec/tpotce
        • cd tpotce
      2. 使用構建ISO腳本。該腳本將會下載並安裝所需依賴項
        • ./makeiso.sh
        • #成功構建后,在目錄會生成iso鏡像tpot.iso以及tpot.sha256

  2、 在硬件上運行

  將鏡像燒錄至U盤,進行安裝

  3、 在虛擬機上運行

  將iso掛載進行安裝

  4、安裝

  • 選擇第一個選項進行安裝

選擇第一個選項進行安裝

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 選擇Tpot的安裝模式這里選擇標准

  • 設置tsec默認用戶密碼

 

  • 設置web用戶名

  • web用戶密碼

 

  • 系統裝好自動執行安裝腳本

 

 安裝好之后,ssh端口不再是默認的22,變成了64295

 web管理界面:https://[IP]:64297

 服務器管理界面:https://[IP]:64294

  • 基於現有系統安裝

  1.更換apt源

cp /etc/apt/sources.list /etc/apt/sources.list_bak_$(date +%F)
#T-pot使用的是Sid版本所以我添加的源也是Sid版的(注釋的是官方提供的其中一個國外源站):
echo "deb http://mirrors.163.com/debian/ sid main non-free contrib
deb-src http://mirrors.163.com/debian/ sid main non-free contrib
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ sid main non-free contrib
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ sid main non-free contrib
deb http://mirrors.ustc.edu.cn/debian/ sid main non-free contrib
deb-src http://mirrors.ustc.edu.cn/debian/ sid main non-free contrib
#deb http://ftp.sg.debian.org/debian/ sid main non-free contrib
#deb-src http://ftp.sg.debian.org/debian/ sid main non-free contrib
deb http://ftp.hk.debian.org/debian/ sid main non-free contrib
deb-src http://ftp.hk.debian.org/debian/ sid main non-free contrib " > /etc/apt/sources.list
#系統升級 apt-get update
#安裝curl git apt-get install curl git

 

  2.安裝apt-fast

apt-fast 加速包下載速度,通過aria2的多線程在多個鏡像源中進行下載同一個文件,此步驟可忽略,install.sh會自動安裝

 

apt-get install aria2 -y
git clone https://github.com/ilikenwf/apt-fast.git
cd apt-fast/
cp apt-fast /usr/bin/
cp apt-fast /usr/local/sbin/
chmod +x /usr/bin/apt-fast
chmod +x /usr/local/sbin/
cp apt-fast.conf /etc
apt-fast update
sed -i "/^ *MIRRORS/d" /etc/apt-fast.conf
echo "MIRRORS=( 'http://mirrors.163.com/debian/,https://mirrors.tuna.tsinghua.edu.cn/debian/,http://mirrors.ustc.edu.cn/debian/' ) " >> /etc/apt-fast.conf
#后面看了下T-pot install腳本發現腳本內有下載apt-fast(所以可以不用自己下載apt-fast)?
#此框命令可選執行,建議執行一遍用不了多久

 

  3.配置npm源

 

apt-fast install npm
npm config set registry http://registry.npm.taobao.org
#將npm源換成國內源

  4.克隆Tpot

#github克隆速度慢的話可以嘗試更改hosts文件
echo "13.229.188.59 github.com www.github.com
185.199.111.153 assets-cdn.github.com www.assets-cdn.github.com
151.101.228.249 global.ssl.fastly.net www.global.ssl.fastly.net" >> /etc/hosts
#這里指定克隆庫到/opt/tpot,因為此版的install.sh中會到這個目錄下讀配置文件,不存在的話,會自動再從github clone一份

git clone https://github.com/dtag-dev-sec/tpotce /opt/tpot

  5.更改腳本

#發現腳本會將鏡像源替換成官方源,需要將腳本中的替換命令刪除,以下是19.03版本的刪除命令:
sed -i '/^ *tee \/etc/d' install.sh
sed -i '/^ *deb/d' install.sh
sed -i "$(cat -n install.sh | grep "EOF$" | awk '{print $1}' | sed -n "1p")d" install.sh
#以上三條命令不建議在非19.03版本運行,可能install腳本內容更改。
sed -i "/^ *git clone https:\/\/github/d" install.sh #此條刪除install.sh中克隆庫到/opt/tpot前面已經克隆到這個目錄所以刪除
#默認拉docker鏡像的是國外的網站,總有幾個鏡像拉不動,配置加速會快很多
cd /opt/tpot/iso/installer
AA=$(cat -n install.sh | grep "myTPOTCOMPOSE" | grep "for name in" | awk '{ print $1 }')
sed -i "${AA}i curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io" install.sh
sed -i "${AA}a systemctl restart docker" install.sh 

  6.安裝

cd /opt/tpot/iso/installer/
./install.sh --type=user
#如果中途退出執行install.sh,可能會報版本不支持錯誤,需要刪除檢測版本驗證
sed -i "s/if \[ \"\$myLSB\" \!=.*/if \[ 1 \!= 1\]\;/" install.sh

  安裝完成

 

 

 

  7.部署視頻

https://player.youku.com/embed/XNDE5NDAyMDEwMA==

  • 雲部署

在cloud文件夾中有一個ansible例子  #此方法沒有驗證,可自行驗證

不建議裸設備安裝,在獲取足夠的系統包前無法使用apt-fast進行多線程下載將會特別慢

裸設備安裝需要先安裝成debian 再執行install,由於安裝系統部分包安裝緩慢不建議使用此方法
測試大約2-6小時不等的時間

建議直接安裝在現有Debian系統上,使用iso源的速度很慢通常安裝要幾個小時

在現有系統安裝使用多線程下載安裝20分鍾差不多就可以安裝完成

二丶檢查安裝

  • 檢查Tpot服務

systemctl status tpot
  • 檢查容器

cd /opt/tpot/bin
./dps.sh
#如果沒有啟動參考下面使用中的啟動命令
#如果部分沒有成功下載,可以手動下載下面的下載缺失容器

UP為正常

· 下載缺失容器

cd /opt/tpot/etc/compose
for i in `cat ./standard.yml | grep image | cut -d '"' -f2 | uniq`
do
docker pull $i
done

· 啟動容器

cd /opt/tpot/etc/compose
docker-compose -f ./standard.yml
#如果安裝別的模式yml用相應版本的
#如果部分沒有成功下載,可以手動下載

三、使用

  • 啟動Tpot服務

systemctl start tpot
  • 停止Tpot服務

systemctl stop tpot
  • 選擇關閉數據提交

默認情況,捕獲的數據將提交給社區后端,並在 Sicherheitstacho 網站進行展現,可根據個人喜好關閉

  • 1. 停止T-Pot服務
systemctl stop tpot
  • 2. 刪除Ewsposter服務
vi /opt/tpot/etc/tpot.yml
  • 3. 刪除以下行,保存並退出

 

# Ewsposter service
ewsposter:
container_name: ewsposter
restart: always
networks:
- ewsposter_local
image: "dtagdevsec/ewsposter:1903"
volumes:
- /data:/data
- /data/ews/conf/ews.ip:/opt/ewsposter/ews.ip
  • 4. 啟動T-Pot服務

 

systemctl start tpot
  • 選擇加入HPFEEDS分享數據

現在可以與第三方HPFEEDS共享T-Pot數據提供額外的選項來提交攻擊數據,例如SISSDEN。如果您想分享您的T-Pot數據,您只需在第三方經紀人處注冊一個帳戶,並為社區帶來好處。注冊后,您將收到您的憑證,以便與社區分

創建賬戶並申請憑證 https://portal.sissden.eu/profile

運行腳本

./hpfreeds_option.sh 

  • 系統使用

  1、系統監控web  https://yourip:64294 用系統用戶登陸

 

  2、管理web    https://yourip:64297

 

 

  

  3.ssh登錄

ssh -l tsec -p 64295 yourip 

  4.開通root帳戶登錄

sudo passwd root

· 公網收集數據

可以使用內網穿透工具將需要收集信息的端口轉發出去,可以參考

https://www.izhuhn.cn/index.php/2019/05/22/%e8%87%aa%e5%bb%bangrok%e5%86%85%e7%bd%91%e7%a9%bf%e9%80%8f%e6%9c%8d%e5%8a%a1/

四、更新

·備份重要文件

請自行選擇備份

· 執行更新命令

cd /opt/tpot
./update.sh


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM