RCTF2020關於反序列化的一些記錄

2021-10-06 22:17:24 字數 1886 閱讀 4405

這次比賽,我只能說這就是rctf? i了i了~~

這次有一道web題目,是關於反序列化的,這兒稍微記錄一下其中的知識點~

題目原始碼

;根據p牛的描述,我們可以直接將小寫s改為大寫的s,然後後面的字串可以用十六進製制代替~

這兒直接給出處理php指令碼,傳入的引數是序列化的字串~

// bypass %00

function

process_serialized

($serialized

)$string

=substr

($serialized

,$p_start_string

,$length);

# convert every special character to its s representation

$clean_string=''

;for($i

=0;$i

<

strlen

($string);

$i++);

$clean_string.=

ctype_print

($letter)&&

$letter

!='\\'

?$letter

:sprintf

("\\%02x"

,ord

($letter))

;;}# make the replacement

$new.=

substr

($serialized

,$last

,$p_start

-$last).

's:'

.$matches[1

][0]

.':"'

.$clean_string

.'";'

;$last

=$p_end_string+2

;$current

=$last;}

$new.=

substr

($serialized

,$last);

return

$new

;}

直接看圖

<?php 

classa}

$a=[newa(

),"foo"];

$a("123"

);

這兒可以傳參~~!

參考鏈結

序列化反序列化

只要用到網路開發啊,就一定會用到序列化反序列化。1,自定義結構體 struct test int len int type char data 10 test data test buffer.缺點 明文,只支援基本型別,不支援變長結構 2,在1的基礎上,自定義乙個緩衝類,存放乙個訊息。把訊息寫入緩...

序列化反序列化

using system using system.collections.generic using system.io using system.linq using system.text using system.threading.tasks namespace 序列化反序列化 syste...

php反序列化注入,php關於反序列化物件注入漏洞

php物件注入是乙個非常常見的漏洞,這個型別的漏洞雖然有些難以利用,但仍舊非常危險。本文主要和大家分享php關於反序列化物件注入漏洞詳解,希望能幫助到大家。分析php基礎 serialize 把乙個物件轉成字串形式,可以用於儲存 unserialize 把serialize序列化後的字串變成乙個物件...