Day11復現失敗 做題

2021-10-24 17:17:27 字數 3973 閱讀 6936

今天做了好好看的美甲,超級無敵開心

本來想復現cve-2016-7124的,ctf中的反序列化好多都是使用這種方法繞過的,但是我沒復現出來,就把重要知識點記錄一下吧。

cve-2016-7124主要就是使用反序列化中__wakeup函式進行繞過的

也就是那個很重要的知識點:

當反序列化字串,表示屬性個數的值大於真實屬性個數時,會跳過 __wakeup 函式的執行。

<?php

class

test

public

function

__destruct()

}//$s = new test();

//echo serialize($s);

//s = o:4:"test":1:

$str

=$_get

["s"];

@$un_str

=unserialize

($str);

echo

$un_str

->

name."

";?>

然後就可以構造一句話寫入

?s=o:4:

"test":1

:

<?php

/** * created by phpstorm.

* user: jinzhao

* date: 2019/10/6

* time: 8:04 pm

*/highlight_file

(__file__);

class

buu}

catch

(exception$e)

}}if(

$_get

['pleaseget'

]===

'1')

}}

uniqid() :函式基於以微秒計的當前時間,生成乙個唯一的 id。

<?php

class

buu}

catch

(exception$e)

}}$a=

newbuu()

;//傳乙個引用$a-

> input=&$a

->

correct

;echo

serialize($a

)?>

o:3:

"buu":2

:

然後就是md5的繞過

if

(v1 !=v2 &&

md5(v1)

==md5

(v2)):

要求是兩個值不相等但是他們的md5值相等

1、md5不能處理陣列,所以可以用陣列繞過,v1=1&&v2=2。

2、0e在比較的時候會將其視作為科學計數法,所以無論0e後面是什麼,0的多少次方還是0

md5弱型別比較

== !=和=== !==運算子

如果用 == 或 != 比較乙個數字和字串或者比較涉及到數字內容的字串,則字串會被轉換為數值並且比較按照數值來進行。當用 === 或!== 進行比較時則不進行型別轉換,因為此時型別和數值都要比對

缺陷的利用也就是0e開頭的字串,如果採用 == 運算子比較雜湊值,任何以 『0e』 開頭的字串都相等

這些是md5後0e開頭的

qnkcdzo

0e830400451993494058024219903391

s878926199a

0e545993274517709034328855841020

s155964671a

0e342768416822451524974117254469

s214587387a

0e848240448830537924465865611904

s214587387a

0e848240448830537924465865611904

s878926199a

0e545993274517709034328855841020

s1091221200a

0e940624217856561557816327384675

s1885207154a

0e509367213418206700842008763514

s1502113478a

0e861580163291561247404381396064

s1885207154a

0e509367213418206700842008763514

s1836677006a

0e481036490867661113260034900752

s155964671a

0e342768416822451524974117254469

s1184209335a

0e072485820392773389523109082030

s1665632922a

0e731198061491163073197128363787

s1502113478a

0e861580163291561247404381396064

s1836677006a

0e481036490867661113260034900752

s1091221200a

0e940624217856561557816327384675

s155964671a

0e342768416822451524974117254469

s1502113478a

0e861580163291561247404381396064

s155964671a

0e342768416822451524974117254469

s1665632922a

0e731198061491163073197128363787

s155964671a

0e342768416822451524974117254469

s1091221200a

0e940624217856561557816327384675

s1836677006a

0e481036490867661113260034900752

s1885207154a

0e509367213418206700842008763514

s532378020a

0e220463095855511507588041205815

s878926199a

0e545993274517709034328855841020

s1091221200a

0e940624217856561557816327384675

s214587387a

0e848240448830537924465865611904

s1502113478a

0e861580163291561247404381396064

s1091221200a

0e940624217856561557816327384675

s1665632922a

0e731198061491163073197128363787

s1885207154a

0e509367213418206700842008763514

s1836677006a

0e481036490867661113260034900752

s1665632922a

0e731198061491163073197128363787

s878926199a

0e545993274517709034328855841020

明天學習流量包,衝衝衝

參考文章:

手機衛士day11

系統程序顯示和隱藏 建立程序管理設定頁面 processmanagersettingactivity 編寫設定頁面布局檔案 監聽checkbox的勾選事件,更新本地sharepreference 根據本地記錄,更新checkbox狀態 boolean showsystem mprefs.getboo...

實習日記 Day11

滴 今日份心得總結卡 今日最大心得其實應該是,穿一條薄褲子還露腳踝的我怕是失了智,早上腿差點都凍僵了 1.不要從別人身上尋求安心 做好自己,降低對人際關係的預期。果然,邊際遞減效應 應驗了,上週還覺得和諧無比的同事 師徒關係,這週就開始覺察到距離感。我曾以為我的認真工作和順利完成任務能得到上司或者師...

區間合併 day 11

區間合併 問題 給定 n 個區間 li,ri 要求合併所有有交集的區間。注意如果在端點處相交,也算有交集。輸出合併完成後的區間個數。例如 1,3 和 2,6 可以合併為乙個區間 1,6 輸入格式 第一行包含整數n。接下來n行,每行包含兩個整數 l 和 r。輸出格式 共一行,包含乙個整數,表示合併區間...