Cuckoo_v2.0.6 REST API使用

環(huán)境準備

安裝必要模塊

$ sudo apt-get install uwsgi uwsgi-plugin-python nginx

uwsgi設置

在venv中運行$ cuckoo api --uwsgi,將結果保存到/etc/uwsgi/apps-available/cuckoo-api.ini文件里


plugins = python

virtualenv = /home/cuckoo/cuckoo

module = cuckoo.apps.api

callable = app

uid = cuckoo

gid = cuckoo

env = CUCKOO_APP=api

env = CUCKOO_CWD=/home/..somepath..

創(chuàng)建鏈接

$ sudo ln -s /etc/uwsgi/apps-available/cuckoo-api.ini /etc/uwsgi/apps-enabled/

啟動uwsgi

$ sudo service uwsgi start cuckoo-api

nginx設置

在venv中運行$ cuckoo api --nginx,將結果保存到/etc/nginx/sites-available/cuckoo-api文件里


upstream _uwsgi_cuckoo_api {

server unix:/run/uwsgi/app/cuckoo-api/socket;

}

server {

listen localhost:8090;

# REST API app

location / {

client_max_body_size 1G;

uwsgi_pass _uwsgi_cuckoo_api;

include uwsgi_params;

}

}

創(chuàng)建鏈接

$ sudo ln -s /etc/nginx/sites-available/cuckoo-api /etc/nginx/sites-enabled/

啟動nginx

$ sudo service nginx start

啟動cuckoo api

$ cuckoo api -H 0.0.0.0 -p 8090

8090是默認端口,可以更改,但之前的配置都要與之一致。

啟動方法

初次環(huán)境配置完成后,以后的啟動過程只需三條命令。


$ sudo service uwsgi start cuckoo-api

$ sudo service nginx start

(venv)$ cuckoo api -H 0.0.0.0 -p 8090

API使用方法

資源 描述
POST /tasks/create/file 提交一個文件任務
POST /tasks/create/url 提交一個url任務
POST /tasks/create/submit 提交多個文件任務
GET /tasks/list 返回存儲在內部Cuckoo數(shù)據庫中的任務列表,可以選擇指定要返回的條目的限制
GET /tasks/sample/<ID> 返回存儲在Cuckoo內部數(shù)據庫中給定sampleID的任務列表
GET /tasks/view/<ID> 返回分配給指定taskID的任務的詳細信息
GET /tasks/reschedule/<ID> 重新調度分配給指定taskID的任務
GET /tasks/delete/<ID> 從數(shù)據庫中刪除給定taskID任務并刪除結果
GET /tasks/report/<ID> 返回與指定taskID關聯(lián)的任務分析報告,可以選擇指定要返回的報告格式,如果沒有指定,則返回JSON報告
GET /tasks/screenshots/<ID> 檢索與給定taskID關聯(lián)的屏幕截圖
GET /tasks/rereport/<ID> 重新運行與給定taskID關聯(lián)的任務報告
GET /tasks/reboot/<ID> 重新啟動給定taskID的分析任務
GET /memory/list/<ID> 返回與給定taskID關聯(lián)的內存轉儲文件列表
GET /memory/get/<ID> 檢索與給定taskID關聯(lián)的一個內存轉儲文件
GET /files/view 使用MD5、SHA256或internal ID搜索分析后的二進制文件
GET /files/get 返回具有指定SHA256散列的二進制文件的內容
GET /pcap/get/<ID> 返回與給定taskID關聯(lián)的PCAP的內容
GET /machines/list 返回Cuckoo可用的分析機器列表
GET /machines/view 返回與指定名稱關聯(lián)的分析機器的詳細信息
GET /cuckoo/status 返回Cuckoo狀態(tài),包括版本和任務概述
GET /vpn/status 返回VPN狀態(tài)
GET /exit 關閉API服務

具體python調用法見官方文檔:
https://cuckoo.readthedocs.io/en/latest/usage/api/。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容