去年的筆記,放上來除草
0x00 漏洞原理
其中一個為php gc中的一個釋放后重用漏洞,由ryat(陳韜光)發現提交。
影響版本:
- 7.0 - all versions to date
- 7.1 - all versions to date
- 7.2 - all versions to date
- 7.3 - all versions to date
另外一個是JsonSerializable的釋放后重用漏洞,由nikic 發現提交
影響版本:
- 7.1 - all versions to date
- 7.2 < 7.2.19 (released: 30 May 2019)
- 7.3 < 7.3.6 (released: 30 May 2019)
0x01 Exp
0x02 利用平台
linux
0x03 漏洞效果
bypass_disable_funciton 執行任意命令
0x04 實際利用
其中php gc的釋放后重用漏洞,能夠穩定在多個php在線運行沙盒執行

sandbox.onlinephpfunctions.com 禁掉了gc_collect_cycles()函數
而JsonSerializable的話,則不是很穩定,偶爾需要調一下參數
tool.lu穩定執行
dooccn.com 調值好像也不行
但sanbox這個卻可以穩定打
認真對比會發現,國內的幾個平台都直接用的root權限,沒有划分權限
同時也發現了一些修復的方法,比如gc的禁掉gc_collect_cycles()
0x05 總結
整體上GC的那個更加穩定,如果GC不行,那么就可以用JSON那個打試一下,不行再調大值多打兩次