web刷題記錄(3)

[NISACTF 2022]checkin

簡單的get傳參,好久沒做過這么簡單的題了

王德發?????!,看了源代碼以后,本來以為是js腳本的問題,但是禁用js腳本沒用,看了大佬的wp以后才發現,是有字符被隱藏了,具體推測是因為對高亮的使用,這里第二段注釋部分顏色不對。(url通過show_source函數在高亮源代碼時按照php.ini中的設置來渲染)

而且,鼠標掃前面,會有后面的代碼被同步

這里嘗試復制源代碼到winhex里面看看。

確實存在,將這些特殊符號用URL編碼以后再次進行傳參,這里用到的知識點就是特殊字符識別。

payload

ahahahaha=jitanglailo&%E2%80%AE%E2%81%A6%55%67%65%69%77%6F%E2%81%A9%E2%81%A6%63%75%69%73%68%69%79%75%61%6E=%E2%80%AE%E2%81%A6%20%46%6C%61%67%21%E2%81%A9%E2%81%A6%4E%31%53%41%43%54%46

得到了flag

[UUCTF 2022 新生賽]ez_rce

進來就是一個正則啊,看來這題就是各種過濾了·

????????這種題我覺得一般就是過濾了平時比較常用的OS命令,然后要用點稍微冷門的命令或者格式來進行繞過。然后這里有就是php的函數以及講解(PHP中的輸出:echo、print、printf、sprintf、print_r和var_dump-騰訊云開發者社區-騰訊云)

然后就是反引號的作用,之前也遇到過,但是沒有仔細的考慮過,這里做出介紹:

1.反引號常見在SQL語句中來包含關鍵字,比如

$sql = "select `user`,username from `Content`";
  此SQL中有反引號,也沒有反引號
  
   加上反引號就不會有因為字段是關鍵字而出錯的問題。
  
   為了保險起見,我們建議在所有字段中都加上反引號,即上面的SQL建議寫成

$sql = "select `user`,`username` from `Content`";
  
  2.反引號還有種功能是執行系統命令,比如:echo `dir d:\php`;注意,此句中的引號是反引號,而不是單引號。此句在足夠權限的系統環境中,將列舉D盤PHP目錄的一些文件信息。
  
  3.注:反引號位于鍵盤左邊Esc下面,數字1按鈕前,Tab上。
  
  4.例如:SELECT `setting` FROM `$tablename` WHERE $where LIMIT 1

????????然后呢,這里的命令執行沒有過濾 <> ? \/ 所以可以 ?>閉合(這個閉合針對括號也被過濾,但是這里的括號并沒有被過濾,所以還是可以用括號進行過濾)

??????? 構造第一步payload:

?code=printf(`l\s `);

這里用var_dump也可以

看一下根目錄,找到了和flag有關的文件

查看的話 ,一種是使用被過濾的字符,但是要用到/,還有一種,也可以用沒有被過濾的命令,比如rev和nl(這里的rev是逆序輸出,所以輸出的flag是反的,需要人為改正一下,或者跑個腳本,有興趣的可以試試,我看了一下,就沒有復制上)。這里因為第一種很簡單,所以采用第二種來示例:

得到了flag

[SWPUCTF 2022 新生賽]ez_ez_php(revenge)

進來以后,發現應該是和偽協議有關

嘗試讀取flag.php

應該是讀取到了,嘗試解碼看看

得到了一段php代碼,給了關鍵信息,大概意思應該是說,真正的flag在'/flag'下,不是flag.php下,

嘗試修改以后再次讀取

成功得到了flag

?[CISCN 2019華東南]Web11

看起來都是比其他題吊一點

看到了提示

根據下面的三張圖提示,可以看出是smart ssti,在XFF處構造payload

介紹一下smart

????????smart是php的模板引擎,模板引擎的作用就是分離前端頁面和數據的,題目中顯示API的URL由于環境的原因無法使用,但我們的IP依舊顯示在了頁面的右上角,且根據它的提示XFF我們很容易想到,在X-Forwarded-For里構造ssti.然后呢ssti,我也寫過相關的博客,詳細內容,可以在這里找關于ssti(簡介)-CSDN博客

?????????在利用SSTI注入時,在Smarty中一般用{php}{/php}標簽來進行包裹執行php語句,在查詢wp和一些資料后,得知{php}標簽被強烈建議不使用,只有在SmartyBC中可用;

????????然后{if}標簽和php中的if判斷類似,而且可以正常使用php中的函數和符號,不過在使用時,要配上{/if}

??????? 然后是php的沒必要去,模板引擎的作用就是分離前端頁面和數據的,題目中顯示API的URL由于環境的原因無法使用,但我們的IP依舊顯示在了頁面的右上角,且根據它的提示XFF我們很容易想到,在X-Forwarded-For里構造ssti:payload

??????? 抓包,改xff

?經典${7*7}回顯是$49

?進行下一步判斷7{*comment*}7

基本可以判斷是是Smarty類型,可以開始包裹php語句進行查詢了(除了加個{if}標簽,還是用的php語句)

找到了flag相關文件,查看

找到了flag

[LitCTF 2023]這是什么?SQL !注一下 !

這個圖我都不敢放加載完的

抓包一下,搞sqlmap,時間盲注,布爾盲注

爆庫

感覺應該和ctf有關,看看信息

光是用戶名的話,可能沒什么用,看看另外一個ctf的庫里面有什么

運氣很好,找到了flag相關信息,接著往下爆破

?爆字段

得到了flag

[HNCTF 2022 Week1]easy_html

提示了cookie里面有東西

?f12查看

?

%2f是url編碼,說明這里給了有關文件地址的提示 ,即f14g.php,訪問一下看看

讓輸入手機號,但是位數被限制了,限制到了十位

然后就彈了這個提示

f12改一下位數限制 ,再登陸

得到了flag

[NISACTF 2022]babyupload?

傳🐎啊,我最熟了,先上個圖片🐎看看·

傳不上,看看源碼

給了提示,意思是要叫我下個什么東西,看看

zip文件

解壓以后里面是個python文件

這里是全部代碼

from flask import Flask, request, redirect, g, send_from_directory
import sqlite3
import os
import uuidapp = Flask(__name__)SCHEMA = """CREATE TABLE files (
id text primary key,
path text
);
"""def db():g_db = getattr(g, '_database', None)if g_db is None:g_db = g._database = sqlite3.connect("database.db")return g_db@app.before_first_request
def setup():os.remove("database.db")cur = db().cursor()cur.executescript(SCHEMA)@app.route('/')
def hello_world():return """<!DOCTYPE html>
<html>
<body>
<form action="/upload" method="post" enctype="multipart/form-data">Select image to upload:<input type="file" name="file"><input type="submit" value="Upload File" name="submit">
</form>
<!-- /source -->
</body>
</html>"""@app.route('/source')
def source():return send_from_directory(directory="/var/www/html/", path="www.zip", as_attachment=True)@app.route('/upload', methods=['POST'])
def upload():if 'file' not in request.files:return redirect('/')file = request.files['file']if "." in file.filename:return "Bad filename!", 403conn = db()cur = conn.cursor()uid = uuid.uuid4().hextry:cur.execute("insert into files (id, path) values (?, ?)", (uid, file.filename,))except sqlite3.IntegrityError:return "Duplicate file"conn.commit()file.save('uploads/' + file.filename)return redirect('/file/' + uid)@app.route('/file/<id>')
def file(id):conn = db()cur = conn.cursor()cur.execute("select path from files where id=?", (id,))res = cur.fetchone()if res is None:return "File not found", 404# print(res[0])with open(os.path.join("uploads/", res[0]), "r") as f:return f.read()if __name__ == '__main__':app.run(host='0.0.0.0', port=80)

?

我們直接看最關鍵的def uploaddef file里的內容,意思是,上傳的文件不能有后綴名,且文件名前會拼接一個前綴upload/,使得輸出的文件只能是在目錄upload/下的,這里就涉及到os.path.join()的絕對路徑拼接漏洞:

絕對路徑拼接漏洞

os.path.join(path,*paths)函數用于將多個文件路徑連接成一個組合的路徑。第一個函數通常包含了基礎路徑,而之后的每個參數被當作組件拼接到基礎路徑之后。

然而,這個函數有一個少有人知的特性,如果拼接的某個路徑以 / 開頭,那么包括基礎路徑在內的所有前綴路徑都將被刪除,該路徑將視為絕對路徑,若我們使得res[0]='/flag',則可以讀取到根目錄下的flag文件,因此利用bp抓包,修改文件名為/flag即可:?

所以若使得res[0]='/flag',則可以讀取到根目錄下的flag文件,因此利用bp抓包,修改文件名為/flag即可:

得到路徑以后,訪問即可

得到了flag

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

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

相關文章

鴻蒙輕內核M核源碼分析系列六 任務及任務調度(2)任務模塊

任務是操作系統一個重要的概念&#xff0c;是競爭系統資源的最小運行單元。任務可以使用或等待CPU、使用內存空間等系統資源&#xff0c;并獨立于其它任務運行。鴻蒙輕內核的任務模塊可以給用戶提供多個任務&#xff0c;實現任務間的切換&#xff0c;幫助用戶管理業務程序流程。…

智慧校園究竟有何魅力?

隨著科技的快速發展&#xff0c;智慧校園已成為教育領域的熱門話題。智慧校園利用先進的技術手段&#xff0c;將信息化與教育深度融合&#xff0c;為學生、教師和家長提供更便捷、高效的教育服務。本文將帶您深入了解智慧校園的魅力&#xff0c;讓您對未來教育的發展充滿期待。…

Ego微商項目部署(小程序項目)(全網最詳細教程)

目錄 1.項目部署前的準備 1.1獲取APPID和APPSecret&#xff08;微信小程序&#xff09; 1.2測試工具 1.3微信開發者工具下載與安裝 2.Ego微商后端項目部署 2.1部署細節流程 2.2部署架構圖 2.3組件要求及版本 2.4后臺部署操作 2.4.1安裝vm和cenos7 2.4.2本地服務檢查…

我們如何利用 0 美元營銷將 UX/UI 產品發展到 320k 用戶

嘿 &#x1f44b; 我是 Paul&#xff0c;FlowMapp 的聯合創始人。 現在&#xff0c;我們是一個由7人&#xff08;少數兼職成員&#xff09;組成的團隊&#xff0c;試圖將產品擴展到$ 1M ARR。 希望這些對您有所幫助&#xff0c;并祝您未來的產品好運&#xff01; 我決定與…

【AI大模型】Transformers大模型庫(四):AutoTokenizer

目錄??????? 一、引言 二、自動分詞器&#xff08;AutoTokenizer&#xff09; 2.1 概述 2.2 主要特點 2.3 代碼示例 三、總結 一、引言 這里的Transformers指的是huggingface開發的大模型庫&#xff0c;為huggingface上數以萬計的預訓練大模型提供預測、訓練等服…

PMAT安裝及使用(Bioinformatics工具-021)

01 背景 PMAT 是一個高效的組裝工具包&#xff0c;用于利用第三代&#xff08;HiFi/CLR/ONT&#xff09;測序數據組裝植物線粒體基因組。PMAT 還可以用于組裝葉綠體基因組或動物線粒體基因組。 PMAT&#xff1a;使用低覆蓋度HiFi測序數據的高效植物線粒體組裝工具包-文獻精讀…

python字符串的進階

在上一篇文章的 密碼破解器 中&#xff0c;我們回顧了循環專題的知識點。 while 循環和 for 循環是 Python 中的兩大循環語句&#xff0c;它們都可以實現循環的功能&#xff0c;但在具體使用時略有差別。當循環次數不確定時&#xff0c;我們選用 while 循環&#xff1b;當循環…

【限免】雜波環境下線性調頻脈沖、巴克碼、頻率步進脈沖雷達MTI、脈沖壓縮【附MATLAB代碼】

文章來源&#xff1a;?微信公眾號&#xff1a;EW Frontier/ 智能電磁頻譜算法 本代碼主要模擬雜波環境&#xff08;飛機、地雜波、鳥類信號&#xff09;下&#xff0c;Chirp脈沖、巴克碼脈沖、頻率步進脈沖雷達信號的脈沖壓縮及MTI、匹配濾波。 MATLAB主代碼 % 生成雷達信號…

做任務賺錢的app有哪些?(真實可靠能做任務賺錢軟件app推薦)

在數字化時代&#xff0c;通過手機APP做任務賺錢已成為一種流行的兼職方式。這些APP為用戶提供了完成小任務以賺取現金或獎勵的機會。以下是一些真實可靠的做任務賺錢的APP推薦&#xff0c;幫助您在空閑時間增加收入。 賞幫賺是一個正規的兼職接單賺錢平臺&#xff0c;在這個平…

MariaDB數據導入與導出操作演示

文章目錄 整個數據庫導出導入先刪除庫然后再導入 參考這里&#xff1a; MariaDB數據庫導出導入. 整個數據庫 該部分演示&#xff1a;導出數據庫&#xff0c;然后重建數據庫&#xff0c;并導入數據的整個過程。 導出 Win R &#xff0c;打開運行輸入cmd并回車&#xff0c;然…

迅雷極簡易下載

一、簡介 1、迅雷是一家全球領先的去中心化服務商&#xff0c;以技術構建商業&#xff0c;以服務創造共識&#xff0c;從而建立一個高效可信的存儲與傳輸網絡。 迅雷成立于2003年&#xff0c;總部位于中國深圳&#xff0c;2014年于納斯達克上市&#xff08;納斯達克股票代碼&a…

Linux系統管理磁盤管理003

操作系統&#xff1a; CentOS Stream9 測試過程&#xff1a; 模擬磁盤被沾滿&#xff0c; 創建文件 測試腳本 for i in seq 10do# echo $idd if/dev/zero of./$i-$RANDOM.txt bs1M count1024 Done[rootlocalhost ~]# vim 2.txt [rootlocalhost ~]# sh 2.txt 記錄了10240 的…

OPPO 文件傳輸 - 將文件從 OPPO 手機傳輸到 PC 的 5 種方法

OPPO手機以其出色的拍照功能而聞名&#xff0c;尤其是新推出的OPPO Find X2系列&#xff0c;它配備了高清前置鏡頭和超夜景模式&#xff0c;讓您輕松拍出精彩瞬間。當您需要將這些照片或其他文件從OPPO手機傳輸到PC時&#xff0c;以下是五種簡便的方法。 第 1 部分&#xff…

UI設計公司-藍藍設計-交通行業ui設計解決方案

來百度APP暢享高清圖片 這是北京蘭亭妙微科技有限公司&#xff08;簡稱藍藍設計&#xff09;在交通行業的一些ui設計經驗&#xff0c;我們建立了UI設計分享群&#xff0c;每天會分享國內外的一些優秀設計&#xff0c;如果有興趣的話&#xff0c;可以進入一起成長學習&#xff0…

電路方案分析(十九)快速響應過流事件檢測電路

快速響應過流事件檢測電路 1.設計需求2.設計方案3.設計說明4.仿真驗證 tips&#xff1a;方案參考來自TI參考設計&#xff0c;僅供學習交流使用。 1.設計需求 2.設計方案 這是一種快速響應單向電流檢測解決方案&#xff0c;通常稱為過流保護 (OCP)&#xff0c;可提供 < 2μ…

【AI大模型】基于Langchain和Openai借口實現英文翻譯中文應用

&#x1f680; 作者 &#xff1a;“大數據小禪” &#x1f680; 文章簡介 &#xff1a;本專欄后續將持續更新大模型相關文章&#xff0c;從開發到微調到應用&#xff0c;需要下載好的模型包可私。 &#x1f680; 歡迎小伙伴們 點贊&#x1f44d;、收藏?、留言&#x1f4ac; 目…

【python009】Python處理某區域邊界經緯度數據至geohash

1.熟悉、梳理、總結項目研發實戰中的Python開發日常使用中的問題、知識點等&#xff0c;如Python處理某區域邊界經緯度數據至geohash&#xff0c;便于時空交集。 2.歡迎點贊、關注、批評、指正&#xff0c;互三走起來&#xff0c;小手動起來&#xff01; 3.歡迎點贊、關注、批評…

net/http與gin框架的關系分析

要想學好 gin 框架&#xff0c;首先要學習 net/http 服務&#xff0c;而二者的關系又是重中之重。 本文所要做的任務就是將二者“連接” 起來&#xff0c;讓讀者掌握其中之精髓。 一、Golang HTTP 標準庫示例 使用 golang 啟動 http 服務非常簡單&#xff0c;就是一個標準的 C…

【數據庫初階】SQL--DCL

文章目錄 DCL1. 基本介紹2. 用戶管理2.1 查詢用戶2.2 創建用戶2.3 修改用戶密碼2.4 刪除用戶 3. 權限控制3.1 查詢權限3.2 授予權限3.3 撤銷權限 4. DCL總結 DCL 更多數據庫MySQL系統內容就在以下專欄&#xff1a; 專欄鏈接&#xff1a;數據庫MySQL 1. 基本介紹 DCL英文全稱是…

45-3 護網溯源 - 為什么要做溯源工作

官網:CVERC-國家計算機病毒應急處理中心 西工大遭網絡攻擊再曝細節!13名攻擊者身份查明→ (baidu.com) 護網溯源是指通過技術手段追蹤網絡攻擊的來源和行為,其重要性體現在以下幾個方面: 安全防御:了解攻擊源頭可以幫助組織加強網絡安全防御,及時采取措施防止攻擊的再次…