国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

WEB攻防基礎(chǔ)|PHP|過濾函數(shù)intval()繞過原理及方法

這篇具有很好參考價值的文章主要介紹了WEB攻防基礎(chǔ)|PHP|過濾函數(shù)intval()繞過原理及方法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

?intval()函數(shù):

用于獲取變量的整數(shù)值;可使用指定的進(jìn)制?base?轉(zhuǎn)換(默認(rèn)是十進(jìn)制),返回變量?var?的?integer?數(shù)值。

注意:intval()?不能用于?object,否則會產(chǎn)生NOTICE?錯誤并返回?1。

語法結(jié)構(gòu):

int intval ( mixed $var [, int $base = 10 ] )

$var,需要被轉(zhuǎn)換成integer的值;$base,決定轉(zhuǎn)化時可所使用的進(jìn)制。

如果$base值為0,通過檢測傳進(jìn)的$var格式來決定使用的進(jìn)制;

$var字符串前綴"0x"代表16進(jìn)制,"0"代表8進(jìn)制,默認(rèn)為10進(jìn)制;

繞過方法思路總結(jié):

目錄

?intval()函數(shù):

繞過方法思路總結(jié):

一、進(jìn)制類型轉(zhuǎn)換:

二、弱比較(a==b),可以給a、b兩個參數(shù)傳入數(shù)組,使弱比較為true:

三、增加小數(shù)位:

四、轉(zhuǎn)換字符串:

五、取反:

六、運(yùn)用算數(shù)運(yùn)算符:


一、進(jìn)制類型轉(zhuǎn)換:

#實例:23的16進(jìn)制:0x17,8進(jìn)制為027

if(23 != $_GET['i']){
    if(23 == intval($_GET['i'],0)){
        echo '漏洞利用成功';
    }
}else{
    echo 'NONONO';
}

intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

//繞過思路:當(dāng)某個數(shù)字被過濾時,可以使用它的8進(jìn)制/16進(jìn)制來繞過;

二、弱比較(a==b),可以給a、b兩個參數(shù)傳入數(shù)組,使弱比較為true:

if($_GET['a']!=$_GET['b']) {
    if (intval($_GET['a']) == intval($_GET['b'])) {
        echo '漏洞利用成功';
    }
}else
    echo 'NONONO';

intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

&&因為使用intval()轉(zhuǎn)換數(shù)組類型時,不關(guān)心數(shù)組中的內(nèi)容,只判斷數(shù)組中有沒有元素;

所以,當(dāng)數(shù)組中有值時,返回值為1;1==1,漏洞利用成功。

//當(dāng)網(wǎng)址處輸入?i[]=??時后端接收的值為1,因為數(shù)組中會帶有一個元素即空字符串。

三、增加小數(shù)位:

#例子與上題相同,不同繞過方法:

if($_GET['a']!=$_GET['b']) {
    if (intval($_GET['a']) == intval($_GET['b'])) {
        echo '漏洞利用成功';
    }
}else
    echo 'NONONO';

intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

//因為 intval() 轉(zhuǎn)換小數(shù)類型時,只返回個位數(shù),不遵循四舍五入的原則。

&&繞過思路:當(dāng)某個數(shù)字被過濾時,可以給它增加小數(shù)位來繞過。

四、轉(zhuǎn)換字符串:

intval()函數(shù)轉(zhuǎn)換字符串時,會判斷字符串是否以數(shù)字開頭;

//當(dāng)字符串以數(shù)字開頭,就會返回1個或多個連續(xù)的數(shù)字;

//當(dāng)字符串以字母開頭,就會返回0;

//0?或?0x?開頭也只會當(dāng)做普通字符串處理;

//雙引號對轉(zhuǎn)換結(jié)果沒有影響,但對下面這個示例會有影響,當(dāng)我們傳入?i=0時失敗。intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

但當(dāng)我們傳入?i="0"、?i="1"、?i='0',?i='1'等值時;成功利用漏洞。intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

#轉(zhuǎn)換字符串例子:

$t = '0';
if($t!==$_GET['i']) {
    if($t == intval($_GET['i'])) {
        echo '漏洞利用成功';
    }
}else
    echo 'NONONO';
?>

intval函數(shù)繞過,WEB攻防基礎(chǔ),php,開發(fā)語言,網(wǎng)絡(luò)安全,安全,web安全

五、取反:

//intval()支持一些特殊符號,比如?~?取反;

????intval(~10):-11;intval(~1):-2;intval(~~10):10;

????&&繞過思路:當(dāng)某個數(shù)字被過濾時,可以兩次取反來繞過;

var_dump(intval(~10));
var_dump(intval(~~10));

返回值:

int(-11)
int(10)

六、運(yùn)用算數(shù)運(yùn)算符:

//intval()轉(zhuǎn)換包含算術(shù)運(yùn)算符時,會先運(yùn)算,在對運(yùn)算結(jié)果進(jìn)行轉(zhuǎn)換;

????intval(5*5):25;

????&&繞過思路:當(dāng)某個數(shù)字被繞過時,可以使用算數(shù)運(yùn)算符繞過;文章來源地址http://www.zghlxwxcb.cn/news/detail-792150.html

到了這里,關(guān)于WEB攻防基礎(chǔ)|PHP|過濾函數(shù)intval()繞過原理及方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Web攻防--JS算法逆向--斷點(diǎn)調(diào)試--反調(diào)試&&代碼混淆繞過

    Web攻防--JS算法逆向--斷點(diǎn)調(diào)試--反調(diào)試&&代碼混淆繞過

    在進(jìn)行滲透測試過程中,在一些功能點(diǎn)進(jìn)行參數(shù)注入或者枚舉爆破等過程中,會出現(xiàn)參數(shù)進(jìn)行加密的情況,但是我們輸入?yún)?shù)并不是加密狀態(tài),即便測試點(diǎn)存在漏洞也不可能測試成功,這時候便需要將所提交參數(shù)進(jìn)行加密后在進(jìn)行注入,針對JS應(yīng)用我們可以采用JS斷點(diǎn)調(diào)試的方

    2024年02月10日
    瀏覽(28)
  • Web 攻防之業(yè)務(wù)安全:驗證碼繞過測試.(修改數(shù)據(jù)包中 res_code 的值 實現(xiàn)繞過.)

    業(yè)務(wù)安全是指保護(hù)業(yè)務(wù)系統(tǒng)免受安全威脅的措施或手段。 廣義 的業(yè)務(wù)安全應(yīng)包括業(yè)務(wù)運(yùn)行的 軟硬件平臺 (操作系統(tǒng)、數(shù)據(jù)庫,中間件等)、 業(yè)務(wù)系統(tǒng)自身 (軟件或設(shè)備)、 業(yè)務(wù)所提供的服務(wù)安全 ; 狹義 的業(yè)務(wù)安全指 業(yè)務(wù)系統(tǒng)自有的軟件與服務(wù)的安全 。 驗證碼繞過測試

    2023年04月14日
    瀏覽(24)
  • 第27天:安全開發(fā)-PHP應(yīng)用&TP框架&路由訪問&對象操作&內(nèi)置過濾繞過&核心漏洞

    第27天:安全開發(fā)-PHP應(yīng)用&TP框架&路由訪問&對象操作&內(nèi)置過濾繞過&核心漏洞

    1.TP框架-開發(fā)-配置架構(gòu)路由MVC模型 參考:https://www.kancloud.cn/manual/thinkphp5_1 配置架構(gòu)-導(dǎo)入使用 路由訪問-URL訪問 數(shù)據(jù)庫操作-應(yīng)用對象 文件上傳操作-應(yīng)用對象 前端頁面渲染-MVC模型 1.TP框架-安全-不安全寫法版本過濾繞過 1.內(nèi)置代碼寫法 不合要求的代碼寫法-ThinkPHP5-自寫 2.框架

    2024年04月25日
    瀏覽(30)
  • 深入理解PHP+Redis實現(xiàn)布隆過濾器(億級大數(shù)據(jù)處理和黑客攻防必備)

    英文名稱Bloom Filter,用于判斷一個元素是否在一個大數(shù)據(jù)集合中,如果檢測到存在則有可能存在,如果不存在則一定不存在。 Redis官網(wǎng)對于布隆過濾器的說明:https://redis.io/docs/data-types/probabilistic/bloom-filter/ 防止緩存穿透:用于快速判斷某個商品數(shù)據(jù)是否存在于緩存中,如果存

    2024年04月09日
    瀏覽(29)
  • Web 攻防之業(yè)務(wù)安全:Response狀態(tài)值修改測試(修改驗證碼返回值 繞過限制.)

    業(yè)務(wù)安全是指保護(hù)業(yè)務(wù)系統(tǒng)免受安全威脅的措施或手段。 廣義 的業(yè)務(wù)安全應(yīng)包括業(yè)務(wù)運(yùn)行的 軟硬件平臺 (操作系統(tǒng)、數(shù)據(jù)庫,中間件等)、 業(yè)務(wù)系統(tǒng)自身 (軟件或設(shè)備)、 業(yè)務(wù)所提供的服務(wù)安全 ; 狹義 的業(yè)務(wù)安全指 業(yè)務(wù)系統(tǒng)自有的軟件與服務(wù)的安全 。 Response狀態(tài)值修

    2023年04月16日
    瀏覽(21)
  • [CTF/網(wǎng)絡(luò)安全] 攻防世界 file_include 解題詳析(php偽協(xié)議+convert轉(zhuǎn)換過濾器)

    [CTF/網(wǎng)絡(luò)安全] 攻防世界 file_include 解題詳析(php偽協(xié)議+convert轉(zhuǎn)換過濾器)

    題目描述:怎么讀取文件呢? 思路: 由代碼審計可知,可通過filename參數(shù)構(gòu)造POC,來讀取check.php POC的構(gòu)造涉及PHP偽協(xié)議,參考鏈接: 文件包含 | PHP偽協(xié)議實戰(zhàn) POC: 回顯如下: 猜測被過濾,怎么辦呢? 該題涉及到 convert轉(zhuǎn)換過濾器 常見的convert轉(zhuǎn)換過濾器有這兩種:

    2024年02月07日
    瀏覽(24)
  • 攻防世界-WEB-Web_php_include

    攻防世界-WEB-Web_php_include

    打開靶機(jī) 通過代碼審計可以知道,存在文件包含漏洞,并且對偽協(xié)議php://進(jìn)行了過濾。 發(fā)現(xiàn)根目錄下存在phpinfo 觀察phpinfo發(fā)現(xiàn)如下: 這兩個都為on 所以我們就可以使用data://偽協(xié)議 payload如下: 訪問新連接 上面的payload就可以實現(xiàn)命令執(zhí)行了 找了半天發(fā)現(xiàn)flag在fl4gisisish3r3.p

    2024年02月09日
    瀏覽(28)
  • 攻防世界-web篇(php_rce)詳解

    攻防世界-web篇(php_rce)詳解

    每日一題,今天我們來攻防世界web篇(php_rce) 目錄 1、利用system函數(shù)遠(yuǎn)程命令執(zhí)行 2、查找文件目錄 3、進(jìn)入flag目錄 4、查看flag文件拿到flag 首先打開題目: ?這里我們可以看到打開后是一個ThinkPHP V5的界面,由此我們可以判斷這是一個使用TinkPHP框架開發(fā)的,接下來我們由長期的

    2024年02月15日
    瀏覽(31)
  • CTF筆記:PHP函數(shù)is_numeric()繞過

    CTF筆記:PHP函數(shù)is_numeric()繞過

    在做CTF過程中遇到的is_numeric()函數(shù),作用是判斷輸入是不是數(shù)字或數(shù)字字符串。 思路1:數(shù)值-非數(shù)值 原題是[極客大挑戰(zhàn) 2019]BuyFlag,判斷代碼如下: 密碼是404,但是不能輸入數(shù)字,所以要考慮繞過的問題,這里記錄解題思路。 上網(wǎng)搜了一下,可以借助url編碼中的空字符,例

    2024年02月08日
    瀏覽(23)
  • SSTI模板注入-中括號、args、下劃線、單雙引號、os、request、花括號被過濾繞過(ctfshow web入門369)

    SSTI模板注入-中括號、args、下劃線、單雙引號、os、request、花括號被過濾繞過(ctfshow web入門369)

    由于request被過濾,我們就不能再使用傳參的方式進(jìn)行傳遞命令以及被過濾的,下劃線中括號花括號都被過濾,這樣的話我們就只能使用{%%}來進(jìn)行設(shè)置變量以及拼接方法的方式來進(jìn)行利用SSTI漏洞。 本章內(nèi)容,咱們就先研究怎么做出ctfshow web入門369這道題目,然后再講解

    2024年02月08日
    瀏覽(64)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包