應急響應靶機——WhereIS?

用戶名及密碼:zgsf/zgsf


下載資源還有個解題.exe:

1、攻擊者的兩個ip地址

2、flag1和flag2

3、后門程序進程名稱

4、攻擊者的提權方式(輸入程序名稱即可)


之前的命令:


1、攻擊者的兩個ip地址

先獲得root權限,查看一下歷史命令記錄:

看樣子攻擊者在/桌面/tmp目錄可能寫了一個腳本upgrade.sh和對system.log文件進行了一些操作


賦予“開啟環境.sh”執行權限:


但是發現upgrade.sh文件消失了


find命令查看upgrade.sh文件在哪

呃,應該是刪掉了?先看看system.log文件在哪吧


find / -name 'system.log' 2>/dev/null

找到system.log的文件路徑/home/.system_config/system.log


cat命令查看system.log文件內容:

看樣子,第一個攻擊者IP應該是192.168.31.64


本來想直接用grep命令搜索含有“192.168.31.64”的文件的內容的,但沒反應:

grep -rnw '/' -e "192.168.31.64" 2>/dev/null


直接看看計劃任務程序:

cat /etc/crontab

只有這一個任務計劃程序,這應該是攻擊者留下的惡意腳本,查看一下

很明顯這是個反彈shell,通過 TCP 連接到192.168.31.64:1133并提供對系統的遠程控制

攻擊者第一個IP就是192.168.31.64


查看靶機IP時發現還有個docker,從這入手分析一下:

docker ps -a

可以看到容器有rabbitmq,webdav,phpadmin,think,nignx,mysql,而且只有webdav容器正在運行,其他容器都處于Exited狀態,查詢了一下相關資料:

其中thinkphp的漏洞風險更大,優先去排查該容器


啟動think容器并查看是否成功啟動:

docker start 1d1aa8b3f126

docker ps


進入think容器:

docker exec -it 1d1aa8b3f126 sh

ls -a

thinkphp框架的默認日志路徑是:

ThinkPHP 5.1/6.x/7.x/8.x runtime/log/

ThinkPHP 3.x/5.0 runtime/Logs/

順著路徑下去訪問,發現有個22.log:


查看22.log文件內容:

可以看到192.168.31.251進行惡意操作,執行遠程命令,顯示phpinfo

攻擊者第二個IP就是192.168.31.251

答案:192.168.31.64和192.168.31.251


2、flag1和flag2

本來想直接

find / -name *flag*查找關鍵詞“flag”

grep -Ern "\{[^\}]*\}" /查找關鍵詞括號“{}”

但結果太多了,換種思路


先前history命令看到還進入了/home/.system_config目錄,先去看看吧:

ls -a發現有個systemd_null文件,cat命令查看發現賊多信息,看不過來


沒有頭緒了,看看別人的WP,發現在/home目錄下有個.system文件,cat命令查看一下找到flag:

找到第一個flag:

SYS{ZGSFYYDSadmin}


第二個flag也是找不到了,看了別人的WP才知道需要查看容器內文件變化:

最后在nginx容器里發現有個index.html和www.txt,這并不常見:

docker diff 2da3b55bd66c


啟動nginx容器,并進去查看這兩個文件內容:

docker start 2da3b55bd66c

docker exec -it 2da3b55bd66c sh

找到第二個flag:

zgsf{yerhawtigouhegih}

答案:SYS{ZGSFYYDSadmin}和zgsf{yerhawtigouhegih}


3、后門程序進程名稱

上傳whoamifuck.sh并賦予權限:

chmod 777 whoamifuck.sh


查看一下whoamifuck.sh的命令:

./whoamifuck.sh -h


查看是否存在的webshell文件:

./whoamifuck.sh -w /

發現存在一個peiqi.php文件,但感覺不是什么后門程序進程


根據先前的history命令看到的歷史命令提及到system.log,覺得應該從這里入手:

這個命令是在后臺啟動一個system_null文件,并讓它監聽靶機的8899端口,同時將輸出日志保存到system.log文件

但還有個就是systemd_null文件,并讓它監聽靶機的8896端口,同時將輸出日志保存到system.log文件

猜測應該是打錯文件名了,正確的應該是systemd_null文件,因為前面看到了有個systemd_null文件


用find命令各自檢索一下文件名:

find / -name system_null

find / -name systemd_null

發現只有systemd_null文件的文件路徑


先查看一下system.log文件內容:

這時候突然想起來這就是第一問的操作,那后門程序進程名就是systemd_null

答案:systemd_null


4、攻擊者的提權方式(輸入程序名稱即可)

根據第一問和第二問通過docker容器獲得的答案,猜測應該是通過docker來提權,直接journalctl _COMM=sudo > sudo.txt,使用systemd的系統查看sudo命令的歷史,保存為sudo.txt文件

發現還有安裝docker容器的命令,但還是那個問題,關鍵詞“docker”太多了,沒法確定,換種思路


經了解,攻擊者獲取到docker的權限之后是利用的容器逃逸進行的提權,而容器逃逸需要一定條件,去檢查docker.sock是否可訪問

find / -name docker.sock

發現有兩個docker.sock,先看看第一個


ls -la /var/run/docker.sock

但docker.sock文件大小是0,有點奇怪,再看看另一個docker.sock文件:

發現文件大小也是0,可權限不太一樣,但還是確定了通過docker提權

答案:docker


答案總結:

1、192.168.31.64和192.168.31.251

2、SYS{ZGSFYYDSadmin}和zgsf{yerhawtigouhegih}

3、systemd_null

4、docker

原來有提示6個字符啊,那大概都猜得出來是docker,成功攻克該靶機!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/905205.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/905205.shtml
英文地址,請注明出處:http://en.pswp.cn/news/905205.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

變量函數實戰:高保真APP原型“發票頁面”動態交互教程

變量函數是高保真交互原型設計中常見的高級交互功能,能夠避免重復復制與手動修改頁面元素和邏輯標注,讓演示更有真實體驗感。本文分享一個高保真APP交互原型頁面的實操案例,結合原型設計工具中的變量函數與邏輯判斷功能,手把手教你…

量子加密通信:守護信息安全的未來之盾

摘要 在數字化時代,信息安全成為全球關注的焦點。傳統加密技術面臨著被量子計算破解的風險,而量子加密通信作為一種基于量子力學原理的新型加密技術,提供了理論上無條件安全的通信保障。本文將詳細介紹量子加密通信的基本原理、技術實現、應用…

《Vue.js》閱讀之響應式數據與副作用函數

Vue.js 《Vue.js設計與實現》(霍春陽) 適合:從零手寫Vue3響應式系統,大廠面試源碼題直接覆蓋。重點章節:第4章(響應式)、第5章(渲染器)、第8章(編譯器&…

數據處理專題(十三)

學會基本的圖像處理技術。? OpenCV 基礎 實踐:使用 OpenCV 進行圖像讀取、顯示和基本處理? 03 代碼示例 1. 導入必要的庫 import cv2import numpy as npimport matplotlib.pyplot as plt 2. 圖像讀取 # 讀取圖像image_path path_to_your_image.jpg # 替換…

springboot旅游小程序-計算機畢業設計源碼76696

目 錄 摘要 1 緒論 1.1研究背景與意義 1.2研究現狀 1.3論文結構與章節安排 2 基于微信小程序旅游網站系統分析 2.1 可行性分析 2.1.1 技術可行性分析 2.1.2 經濟可行性分析 2.1.3 法律可行性分析 2.2 系統功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系統…

P1874 快速求和

目錄 題目算法標簽: 動態規劃, 線性 d p dp dp思路代碼 題目 P1874 快速求和 算法標簽: 動態規劃, 線性 d p dp dp 思路 求的是最少組成 n n n的加法次數, 對于當前數字序列可以設計狀態表示 f [ i ] [ j ] f[i][j] f[i][j]表示考慮前 i i i個字符, 并且和是 j j j的所有方…

知名人工智能AI培訓公開課內訓課程培訓師培訓老師專家咨詢顧問唐興通AI在金融零售制造業醫藥服務業創新實踐應用

AI賦能未來工作:引爆效率與價值創造的實戰營 AI驅動的工作革命:從效率提升到價值共創 培訓時長: 本課程不僅是AI工具的操作指南,更是面向未來的工作方式升級羅盤。旨在幫助學員系統掌握AI(特別是生成式AI/大語言模型…

Linux 內核參數

文章目錄 什么是內核參數參數種類配置方式1. 編譯內核時配置2. 內核啟動時配置3. 內核運行時配置4. 加載內核模塊時配置總結 什么是內核參數 內核參數是 Linux 系統中用于控制和調整內核行為的可配置選項。這些參數影響系統的性能、安全性和各種功能特性。 參數種類 大部分參…

pythonocc 拉伸特征

micromamba install -c conda-forge pythonocc-core opencascade.js安裝不起來,ai用pythonocc練個手 拉伸線框 線成面 from OCC.Core.gp import gp_Pnt, gp_Dir, gp_Vec from OCC.Core.BRepBuilderAPI import BRepBuilderAPI_MakeEdge, BRepBuilderAPI_MakeWire f…

Vue.js 頁面切換空白與刷新 404 問題深度解析

在使用 Vue.js 開發單頁應用 (SPA) 的過程中,開發者經常會遇到兩個常見問題:頁面切換時出現短暫的空白屏幕,以及刷新頁面時返回 404 錯誤。這兩個問題不僅影響用戶體驗,還可能阻礙項目的正常上線。本文將深入探討這兩個問題的成因…

Go 語言 slice(切片) 的使用

序言 在許多開發語言中,動態數組是必不可少的一個組成部分。在實際的開發中很少會使用到數組,因為對于數組的大小大多數情況下我們是不能事先就確定好的,所以他不夠靈活。動態數組通過提供自動擴容的機制,極大地提升了開發效率。這…

Qt5.14.2 鏈接 MySQL 8.4 遇到的問題

問題一: "Plugin caching_sha2_password could not be loaded: 找不到指定的模塊。 Library path is caching_sha2_password.dll QMYSQL: Unable to connect" 解決方法: alter user root@localhost identified with mysql_native_password by root;問題二: ERR…

Docker 部署 - Crawl4AI 文檔 (v0.5.x)

Docker 部署 - Crawl4AI 文檔 (v0.5.x) 快速入門 🚀 拉取并運行基礎版本: # 不帶安全性的基本運行 docker pull unclecode/crawl4ai:basic docker run -p 11235:11235 unclecode/crawl4ai:basic# 帶有 API 安全性啟用的運行 docker run -p 11235:1123…

開發工具分享: Web前端編碼常用的在線編譯器

1.OneCompiler 工具網址:https://onecompiler.com/ OneCompiler支持60多種編程語言,在全球有超過1280萬用戶,讓開發者可以輕易實現代碼的編寫、運行和共享。 OneCompiler的線上調試功能完全免費,對編程語言的覆蓋也很全&#x…

Docker-配置私有倉庫(Harbor)

配置私有倉庫(Harbor) 一、環境準備安裝 Docker 三、安裝docker-compose四、準備Harbor五、配置證書六、部署配置Harbor七、配置啟動服務八、定制本地倉庫九、測試本地倉庫 Harbor(港灣),是一個用于 存儲 和 分發 Docker 鏡像的企業級 Regi…

關于高并發GIS數據處理的一點經驗分享

1、背景介紹 筆者過去幾年在參與某個大型央企的項目開發過程中,遇到了十分棘手的難題。其與我們平常接觸的項目性質完全不同。在一般的項目中,客戶一般只要求我們能夠通過桌面軟件對原始數據進行加工處理,將各類地理信息數據加工處理成地圖/場景和工作空間,然后再將工作空…

使用 DMM 測試 TDR

TDR(時域反射計)可能是實驗室中上升時間最快的儀器,但您可以使用直流歐姆表測試其準確性。 TDR 測量什么 在所有高速通道中,反射都很糟糕。我們嘗試設計一個通道來減少反射,這些反射都會導致符號間干擾 (…

可視化圖解算法37:序列化二叉樹-II

1. 題目 描述 請實現兩個函數,分別用來序列化和反序列化二叉樹,不對序列化之后的字符串進行約束,但要求能夠根據序列化之后的字符串重新構造出一棵與原二叉樹相同的樹。 二叉樹的序列化(Serialize)是指:把一棵二叉樹按照某種遍…

【Python】Python常用數據類型詳解

Python常用數據類型詳解:增刪改查全掌握 Python作為一門簡潔高效的編程語言,其豐富的數據類型是構建程序的基礎。本文將詳細介紹數字、字符串、列表、元組、字典、集合這六種核心數據類型的特點及增刪改查操作,并附代碼示例,助你全面掌握數據操作技巧。 一、數字(Number)…

模板引用、組件基礎

#### 組件基礎 1. 定義和使用簡單組件 - ![alt text](./img/image-2.png) vue <!-- 在App.vue里 --> <script setup>import HelloWorld from ./components/HelloWorld.vue </script> <template><HelloWorld></HelloWorld></temp…