PortswiggerLab:Exploiting a mass assignment vulnerability

實驗目標

To solve the lab, find and exploit a mass assignment vulnerability to buy a Lightweight l33t Leather Jacket. You can log in to your own account using the following credentials: wiener:peter.

官方WP

  1. In Burp's browser, log in to the application using the credentials wiener:peter.

  2. Click on the Lightweight "l33t" Leather Jacket product and add it to your basket.

  3. Go to your basket and click Place order. Notice that you don't have enough credit for the purchase.

  4. In Proxy > HTTP history, notice both the GET and POST API requests for /api/checkout.

  5. Notice that the response to the GET request contains the same JSON structure as the POST request. Observe that the JSON structure in the GET response includes a chosen_discount parameter, which is not present in the POST request.

  6. Right-click the POST /api/checkout request and select Send to Repeater.

  7. In Repeater, add the chosen_discount parameter to the request. The JSON should look like the following:

    {"chosen_discount":{"percentage":0},"chosen_products":[{"product_id":"1","quantity":1}]
    }
  8. Send the request. Notice that adding the chosen_discount parameter doesn't cause an error.

  9. Change the chosen_discount value to the string "x", then send the request. Observe that this results in an error message as the parameter value isn't a number. This may indicate that the user input is being processed.

  10. Change the chosen_discount percentage to 100, then send the request to solve the lab.


實驗步驟

  • 進入實驗室首頁

  • 點擊右上角的`My account`進入登錄頁面

  • 使用實驗室提供的憑據成功登錄?

  • 回到商品展示頁找到目標商品

  • 將該商品添加進購物車中

在購物車頁面中進行刷新可見一接口

  • 使用OPTIONS方式向該接口發送請求,查看該接口允許接收什么類型的請求

由響應頭可見,該接口僅允許接收`GET`、`POST`方式請求

  • 使用GET方式向該接口發送請求

  • 將請求方式修改為POST
  • 將發送GET請求時響應體復制到POST請求體中
  • 將折扣從0修改為100

  • 發包后成功將商品價格修改為0

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

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

相關文章

卡爾曼濾波器的工作原理

原文: https://www.bzarg.com/p/how-a-kalman-filter-works-in-pictures/ 1 概述 你可以對某個動態系統有不確定信息的任何地方使用卡爾曼濾波器,并且對系統下一步的狀態做出有根據的猜測。即使出現混亂的現實狀態,卡爾曼濾波器都會給出一個合理的結果。…

PDFtk

如果下載的pdf文件有秘鑰的話,使用下面linux命令去掉秘鑰: pdftk 納稅記錄.pdf input_pw 261021 output 納稅記錄_output.pdf將多個單頁pdf合并為一個pdf的linux命令: pdftk 自然人電子稅務局1.pdf 自然人電子稅務局2.pdf 自然人電子稅務局3.pdf 自然人…

Openlayers:海量圖形渲染之WebGL渲染

最近由于在工作中涉及到了海量圖形渲染的問題,因此我開始研究相關的解決方案。我在網絡上尋找相關的解決方案時發現許多的文章都提到利用Openlayers中的WebGLPointsLayer類,可以實現渲染海量的點,之后我又了解到利用WebGLVectorLayer類可以渲…

替換jeecg圖標

替換jeecg圖標 ant-design-vue-jeecg/src/components/tools/Logo.vue <!-- <img v-else src"~/assets/logo.svg" alt"logo">-->

Codeforces Round 970 (Div. 3)題解

題目地址 https://codeforces.com/contest/2008 銳評 本次D3的前四題還是比較簡單的&#xff0c;沒啥難度區分&#xff0c;基本上差不多&#xff0c;屬于手速題。E的碼量比F大一些&#xff0c;實現略顯復雜一些。G的數學思維較明顯&#xff0c;如果很久沒有訓練這個知識點&a…

操作系統:線程間同步之事件集

事件集是線程間同步的機制之一&#xff0c;一個事件集可以包含多個事件&#xff0c;利用事件集可以完成一對多、多對多的線程間同步。 目錄 一、事件集舉例說明 二、事件集工作機制 三、RT-Thread為實例說明 四、事件集的應用場合 一、事件集舉例說明 以坐公交車為例&…

基于springboot鉆孔數據管理系統的設計與實現(源碼+lw+部署文檔+講解),源碼可白嫖!

摘要 本鉆孔數據管理系統采用B/S架構&#xff0c;數據庫是MySQL&#xff0c;網站的搭建與開發采用了先進的Java語言、Hadoop、數據可視化技術進行編寫&#xff0c;使用了Spring Boot框架。該系統從兩個對象&#xff1a;由管理員和用戶來對系統進行設計構建。用戶主要功能包括&…

全雙工分軌語音數據集:讓AI實現無縫對話

清晨&#xff0c;智能音箱根據指令-播放音樂&#xff1b;駕駛途中&#xff0c;車載助手同步處理導航與來電&#xff1b;智能會議工具無縫切換多語種對話……語音交互技術正快速融入生活。然而&#xff0c;用戶對于對話體驗追求更自然、更流暢&#xff0c;實時理解&#xff0c;動…

Python 網絡請求利器:requests 包詳解與實戰

諸神緘默不語-個人技術博文與視頻目錄 文章目錄 一、前言二、安裝方式三、基本使用1. 發起 GET 請求2. 發起 POST 請求 四、requests請求調用常用參數1. URL2. 數據data3. 請求頭 headers4. 參數 params5. 超時時間 timeout6. 文件上傳 file&#xff1a;上傳純文本文件流7. jso…

linux入門四:Linux 編譯器

一、C 語言編譯器 GCC&#xff1a;開啟編程之旅 1.1 GCC 安裝&#xff1a;一站式工具鏈 GCC&#xff08;GNU Compiler Collection&#xff09;是 Linux 下最常用的 C/C 編譯器&#xff0c;支持多種編程語言。安裝命令&#xff08;適用于 Debian/Ubuntu 系統&#xff09;&…

建筑兔零基礎自學記錄69|爬蟲Requests-2

Requests庫初步嘗試 #導入requests庫 import requests #requests.get讀取百度網頁 rrequests.get(http://www.baidu.com) #輸出讀取網頁狀態 print(r.status_code) #輸出網頁源代碼 print(r.text) HTTP 狀態碼是三位數字&#xff0c;用于表示 HTTP 請求的結果。常見的狀態碼有…

Web測試流程及注意點

在Web工程過程中&#xff0c;基于Web系統的測試、確認和驗收是一項重要而富有挑戰性的工作。基于Web的系統測試與傳統的軟件測試不同&#xff0c;它不但需要檢查和驗證是否按照設計的要求運行&#xff0c;而且還要測試系統在不同用戶的瀏覽器端的顯示是否合適。 重要的是&…

基于MATLAB/simulink的信號調制仿真--AM調制

實驗內容&#xff1a; 假設y(t)(20.5*2cos&#xff08;2*pi*1000*t&#xff09;)*5cos&#xff08;2*pi*2*1e4*t&#xff09;調幅系統&#xff0c;請將一個頻率為1000HZ的余弦波信號&#xff0c;通過進行AM調制&#xff0c;載波信號頻率為20kHZ的余弦波&#xff0c;調制度ma0.…

通信協議詳解(十):PSI5 —— 汽車安全傳感器的“抗干擾狙擊手”

一、PSI5是什么&#xff1f; 一句話秒懂 PSI5就像傳感器界的“防彈信使”&#xff1a;在汽車安全系統&#xff08;如氣囊&#xff09;中&#xff0c;用兩根線同時完成供電數據傳輸&#xff0c;即便車禍時線路受損&#xff0c;仍能確保關鍵信號準確送達&#xff01; 基礎概念…

數據結構與算法-圖論-復習1(單源最短路,全源最短路,最小生成樹)

1. 單源最短路 單一邊權 BFS 原理&#xff1a;由于邊權為單一值&#xff0c;可使用廣度優先搜索&#xff08;BFS&#xff09;來求解最短路。BFS 會逐層擴展節點&#xff0c;由于邊權相同&#xff0c;第一次到達某個節點時的路徑長度就是最短路徑長度。 用法&#xff1a;適用…

【WRF理論第十七期】單向/雙向嵌套機制(含namelist.input詳細介紹)

WRF運行的單向/雙向嵌套機制 準備工作&#xff1a;WRF運行的基本流程namelist.input的詳細設置&time_control 設置&domain 嵌套結構&bdy_control 配置部分 namelist 其他注意事項Registry.EM 運行 ARW 嵌套雙向嵌套&#xff08;two-way nesting&#xff09;單向嵌套…

怎么查看蘋果手機和ipad的設備信息和ios udid

你知道嗎&#xff1f;我們每天使用的iPhone和iPad&#xff0c;其實隱藏著大量詳細的硬件與系統信息。除了常見的系統版本和序列號外&#xff0c;甚至連電池序列號、攝像頭序列號、銷售地區、芯片型號等信息&#xff0c;也都可以輕松查到&#xff01; 如果你是開發者、維修工程…

matlab內置的git軟件版本管理功能

1、matlab多人協作開發比普通的嵌入式軟件開發困難很多 用過matlab的人都知道&#xff0c;版本管理對于matlab來說真的很費勁&#xff0c;今天介紹的這個工具也不是說它就解決了這個痛點&#xff0c;只是讓它變得簡單一點。版本管理肯定是不可或缺的&#xff0c;干就完了 2、…

vscode集成deepseek實現輔助編程(銀河麒麟系統)【詳細自用版】

針對開發者用戶&#xff0c;可在Visual Studio Code中接入DeepSeek&#xff0c;實現輔助編程。 可參考我往期文章在銀河麒麟系統環境下部署DeepSeek&#xff1a;基于銀河麒麟桌面&&服務器操作系統的 DeepSeek本地化部署方法【詳細自用版】 一、前期準備 &#xff08…

Java 大廠面試題 -- JVM 深度剖析:解鎖大廠 Offe 的核心密鑰

最近佳作推薦&#xff1a; Java大廠面試高頻考點&#xff5c;分布式系統JVM優化實戰全解析&#xff08;附真題&#xff09;&#xff08;New&#xff09; Java大廠面試題 – JVM 優化進階之路&#xff1a;從原理到實戰的深度剖析&#xff08;2&#xff09;&#xff08;New&#…