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

php 系列題目,包含查看后端源代碼

這篇具有很好參考價值的文章主要介紹了php 系列題目,包含查看后端源代碼。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、弱類型比較問題

原則:

1.字符串和數字比較,字符串回被轉換成數字。

"admin" ==0(true)

admin被轉換成數字,由于admin是字符串,轉換失敗,變成0

int(admin)=0,所以比較結果是ture

2.混合字符串轉換成數字,看字符串的第一個

“1admin” == 1 ‘’2admin“ == 2?

3.字符串開頭以xex開頭,x代表數字。會被轉換成科學計數法

1e9? => 1x10^9

例題一

GIVE ME THE MONEY!!!
 
<?php
 
    include "flag.php";
 
    highlight_file(__FILE__);
 
  
 
    if (isset($_GET['money'])) {
 
        $money=$_GET['money'];
 
        if(strlen($money)<=4&&$money>time()&&!is_array($money))
 
        {
 
            echo $flag;
 
        }
 
        else echo "Wrong Answer!";
 
    }
 
    else echo "Wrong Answer!";
 
?>

使用到第三個原則,輸入參數為四個字節(jié),含有字母e分隔的字符串,設置數值比較大,就可以大過time()時間戳

例題二,經典的0e繞過MD5

<!DOCTYPE html>
<!--html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head>
<body>
<?php
 
    $flag="ctf{YOU_4re_DO1ng_GREAT!}";
     
    if (isset($_GET['a'])&&isset($_GET['b'])) {
        $a=$_GET['a'];
        $b=$_GET['b'];
 
 
        if($a==$b) 
        {
            echo "<center>Wrong Answer!</center>";
        }
        else {
            if(md5($a)==md5($b)) 
            {
                echo "<center>".$flag."</center>"; 
            }
            else echo "<center>Wrong Answer!</center>";
        }
         
    }
    else echo "NONONO"; 
?>
</body>
</html-->

題目要求輸入的兩個參數a、b滿足條件1:a!=b同時滿足條件條件2:MD5(a)==MD5(b)

MD5加密的特點是,輸入的明文不同,輸出的結果必然不同

為了同時實現條件1和條件2,這種極端環(huán)境下就要用到弱類型比較問題的三個原則

分析MD5加密,它輸出的格式是16進制格式的(輸出的元素只有0-9和a-f)

在a-f范圍內有個特殊的字符e存在 ,所以用到三原則中的第三個原則

等號比較的兩邊有xex格式的,都當作科學計數法形式來比較

?輸入兩個0e開頭不相同的字符串,就可以同時滿足兩個條件

二、數組類型參數繞過

  • 許多函數的參數輸入并非數組
  • 強行輸入數組會返回特殊結果

傳入參數為數組類型,函數返回結果為NULL

例題

php 系列題目,包含查看后端源代碼,PHP,php,開發(fā)語言

?輸入參數為三個不同的數組

md5($v1)==md5($v2)? ?=>null==null

strcmp()函數比較兩字符串是否相同,相同返回0,不相同返回1

v3強行輸入數組形式,函數返回值為null,加!變?yōu)閠ure

通常出現strcmp()函數都使用數組繞過,還有就是針對字符串操作的函數

三、傳參允許是空值,并實現繞過

<?php
 
include("extract_flag.php");
extract($_GET); 
if(isset($aurora))
{ 
    $content=trim(file_get_contents($flag)); 
 
    if($aurora==$content)
     {
        echo $flag; 
    } 
else { echo'Oh.no'; } }?>
  • ?extract函數 :講傳入的數組,轉換為變量名和變量值的聲明,例如輸入的get參數是a=1&b=2經過該函數作用了,就多了兩個變量$a=1,$b=2。作用類似于n個$_GET(a)語句
  • file get contents():傳入參數為文件名,函數將傳入文件的內容讀取出來
  • trim():去除字符串首尾的空格

本題是在考驗我們是否已經知道了服務器上的某個文件的內容,就是參數aurora值傳已知文件的內容,$flag傳文件名,就能得到flag

但是問題在于不知道某個文件的內容

解決辦法是傳空值繞過,傳空值不是沒傳值isset()是可以滿足的

aurora&flag

四、%00繞過

php底層的解析器是由c語言實現的,在c語言表達字符串的終結是'\0',在php中是‘%00’

某些函數不過沒有對‘%00’進行特殊處理,就存在著可能繞過的空間

ereg就是這樣的函數,當輸入123%00到ereg函數中,遇到%00就認為字符串終結,不再判斷直接符合條件,返回ture

<?php
 
include("strpos_flag.php");
if (isset ($_GET['password'])) {
if (ereg ("^[a-zA-Z0-9]+$", $_GET['password']) === FALSE)
echo 'You password must be alphanumeric';
else if (strpos ($_GET['password'], '--') !== FALSE)
die('Flag: ' . $flag);
else
echo 'Invalid password';}?>
  • strpos():實現字符串的字符查找是否存在
  • ereg():正則表達式的匹配,ereg?("^[a-zA-Z0-9]+$",?$_GET['password']只允許包含【】內的字符

獲取后端源代碼的方法?

1.后端源碼會以注釋形式展示在前端源代碼中

php 系列題目,包含查看后端源代碼,PHP,php,開發(fā)語言

  • 右鍵查看前端頁面源代碼
  • 地址欄中后跟/index.php~,會自動下載頁面源碼

2.由于電腦或vim編輯器非正常退出,會保留交換文件,后端源碼就保存在交換文件中

例題:

php 系列題目,包含查看后端源代碼,PHP,php,開發(fā)語言

?題目提示說電腦會自動關機,電腦自動關機說明文本編輯器肯定會非正常退出,就會留下交換文件

在地址欄中后跟/.index.php.swp

就會自動下載交換文件php 系列題目,包含查看后端源代碼,PHP,php,開發(fā)語言

?文件內的內容就包含后端源代碼php 系列題目,包含查看后端源代碼,PHP,php,開發(fā)語言文章來源地址http://www.zghlxwxcb.cn/news/detail-675270.html

到了這里,關于php 系列題目,包含查看后端源代碼的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

領支付寶紅包贊助服務器費用

相關文章

  • 解決:eclipse無法查看源代碼

    解決:eclipse無法查看源代碼

    ????????eclipse的jdk沒有配置對應的src,需要手動去添加jdk的源代碼附件。 步驟如下: 1、找到以下路徑: windows(窗口)–Preferences(首選項)–Java–Installed JRES(已安裝的JRE) ,出現如下圖所示的圖片后,選中點擊jdk并點擊右邊的 Edit(編輯)按鈕。 2、找到你安裝的jdk路徑下的l

    2024年02月16日
    瀏覽(89)
  • 查看.Net源代碼vs版本號

    查看.Net源代碼vs版本號

    方法:用記事本打開vs項目的.sln文件. 第2行就是這個源代碼包的開發(fā)軟件vs版本號了 Microsoft Visual Studio Solution File, Format Version 9.00 # Visual Studio 2005 Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008 Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010 Microso

    2024年02月11日
    瀏覽(110)
  • 用什么工具可以查看apk文件源代碼

    APK文件的源代碼可以使用以下工具查看: APK Tool: 一款開源的Android應用程序反編譯工具 Dex2Jar: 一款將Android的dalvik字節(jié)碼文件(.dex)轉換為Java字節(jié)碼文件(.jar)的工具 Jadx: 一款快速且功能強大的Android反編譯工具 AndroGuard: 一款反編譯、分析和安全測試Android應用程序的工具 使用這

    2024年02月11日
    瀏覽(25)
  • 解決Vue項目F12查看源代碼問題

    在Vue項目中,Vue-cli默認可以通過F12查看前端代碼,這可能會造成前端代碼泄露。 為了代碼的安全性,隱藏掉比較好。配置如下: Vue-cli2配置 打開config目錄中的index.js文件,將build對象里的productionSourceMap設置成false Vue-cli3及以上版本配置 在跟目錄打開Vue.config.js文件,如果沒有

    2024年02月15日
    瀏覽(20)
  • PHP-MySQL圖書管理系統(tǒng)(附源代碼)

    PHP-MySQL圖書管理系統(tǒng)(附源代碼)

    本系統(tǒng)采用phpstudy開發(fā)平臺,采用PHP和MySQL數據庫進行開發(fā),開發(fā)工具為HBuilder。phpStudy是一個PHP調試環(huán)境的程序集成最新的 Apache+PHP+MySQL+phpMyAdmin,一次性安裝,無須配置即可使用,是非常方便、好用的PHP調試環(huán)境。(其他平臺均可)@@@文末有獲取方式 功能: 圖書部分: 圖書錄入

    2024年02月11日
    瀏覽(20)
  • 麻雀算法SSA,優(yōu)化VMD,適應度函數為最小包絡熵,包含MATLAB源代碼

    麻雀算法SSA,優(yōu)化VMD,適應度函數為最小包絡熵,包含MATLAB源代碼

    針對大家評論區(qū)給出的很多問題,作者一直都有關注,因此在這里又寫了一篇文章,而且思路與這篇文章有不同之處,至于具體的不同之處放在下一篇文章了,大家感興趣的可以移步觀看,下一篇文章可以說是 作者的嘔心力作。 (4條消息) 白鯨優(yōu)化算法優(yōu)化VMD參數,并提取特

    2024年02月09日
    瀏覽(89)
  • ProGuard 進階系列(一): 運行源代碼

    ProGuard 進階系列(一): 運行源代碼

    在前面的文章深入 Android 混淆實踐:ProGuard 通關秘籍和深入 Android 混淆實踐:多模塊打包爬坑之旅中,已經講到了如何在 Android 中使用 ProGuard,以及如何自定義實現混淆規(guī)則的生成。為了更深入地理解 ProGuard 的細節(jié),本系列文章從我感興趣的點出發(fā),記錄在閱讀 ProGuard 源碼

    2024年02月09日
    瀏覽(18)
  • 【UE Unreal Camera】【保姆級教程二】【包含源代碼】手把手教你通過UE獲取攝像頭幀數據

    【UE Unreal Camera】【保姆級教程二】【包含源代碼】手把手教你通過UE獲取攝像頭幀數據

    ?? 【UE Unreal Camera】【保姆級教程二】【包含源代碼】手把手教你通過UE獲取攝像頭幀數據~ c6ebbaddb1aff.png) ??在UE 攝像頭教程一中,我們已經通過Unreal自帶的媒體播放器打開了攝像頭,并且將攝像頭的數據展示在了游戲畫面中。當然這只是最基本的功能,一般情況下,我們

    2024年02月01日
    瀏覽(21)
  • 改進的北方蒼鷹算法優(yōu)化VMD參數,最小包絡熵、樣本熵、信息熵、排列熵(適應度函數可自行選擇,一鍵修改)包含MATLAB源代碼...

    改進的北方蒼鷹算法優(yōu)化VMD參數,最小包絡熵、樣本熵、信息熵、排列熵(適應度函數可自行選擇,一鍵修改)包含MATLAB源代碼...

    今天給大家?guī)硪黄谟筛倪M的北方蒼鷹算法(SCNGO)優(yōu)化VMD的兩個參數。 同樣以西儲大學數據集為例,選用105.mat中的X105_BA_time.mat數據中1000個數據點。沒有數據的看這篇文章。西儲大學軸承診斷數據處理,matlab免費代碼獲取 選取四種適應度函數進行優(yōu)化,以此確定VMD的最佳k和

    2024年02月15日
    瀏覽(133)
  • 【數據結構】計數排序 & 排序系列所有源代碼 & 復雜度分析(終章)

    【數據結構】計數排序 & 排序系列所有源代碼 & 復雜度分析(終章)

    目錄 一,計數排序 1,基本思想 2,思路實現 3,計數排序的特性總結: 二,排序算法復雜度及穩(wěn)定性分析 三,排序系列所有源代碼 Sort.h Sort.c Stack.h Stack.c 計數排序也叫非比較排序; 1,基本思想 計數排序又稱為 鴿巢原理 ,是對 哈希直接定址法 的變形應用 操作步驟 : 1

    2024年02月08日
    瀏覽(29)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包