代码审计之CVE-2018-7600-Drupal远程代码执行漏洞-Render API
生活随笔
收集整理的這篇文章主要介紹了
代码审计之CVE-2018-7600-Drupal远程代码执行漏洞-Render API
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天學習一下Drupal的另一個漏洞,由于渲染數組不當造成的漏洞
poc:
url:http://localhost/drupal-8.5.0/user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax post: 'mail[a][#lazy_builder][0]': 'system', 'mail[a][#lazy_builder][1][]': 'whoami', 'form_id': 'user_register_form'
使用poc進行測試,并在斷點處觀察其調用流程:
函數的漏洞入口點在:
\core\modules\file\src\Element\ManagedFile.php處
經過explode函數處理,將get請求中的element_parents參數的值變成一個數組:即比如a/b/c變成了["a","b","c"]
然后將處理完的$form_parents變量傳給NestedArray類的getValue函數處理,其中$form包含了表單的所有信息,我們跟進一下:
其中getValue函數就是將$form中的值逐層取出,
如果$parents為a/b/c,則結果值為123
? ? ?此時$callable變量為system,$args變量為["whoami"],然后再調用call_user_func_array()函數處理
?
轉載于:https://www.cnblogs.com/wfzWebSecuity/p/10514064.html
總結
以上是生活随笔為你收集整理的代码审计之CVE-2018-7600-Drupal远程代码执行漏洞-Render API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 力扣——有序链表转换二叉搜索树
- 下一篇: 15 张图, 把TCP/IP 讲得一清二