84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
RT,我現在在給一個PHP專案做程式碼審計,找到了一個有漏洞的方法,但是我怎麼快速找出所有其他文件中調用過這個方法的地方,還有調用這個方法的參數在其他什麼位置傳過來的,如果有這種工具就方便多了,求推薦
我也沒有什麼好的方法,我說說我的做法,感覺樓主也已經試過。
PhpStorm,点击方法,按快捷键ALT + F7或CTRL + ALT +SHIFT +F7查找所有使用。参数变量按F4或CTRL + 鼠标左键查找來源。(這種查找其實還有很多引用沒辦法找到),如循環某個物件集合中呼叫這個物件的方法
PhpStorm
ALT + F7
CTRL + ALT +SHIFT +F7
F4
CTRL + 鼠标左键
如果是動態方法,如function test()全局搜索->test(和->test (
function test()
->test(
->test (
如果是靜態方法,如static function test()全局搜索Class::test(和Class::test (
static function test()
Class::test(
Class::test (
透過上面三種步驟,還是可能遺漏,如動態參數調用,所以也要兼顧搜尋一下方法字串'test'
'test'
$func = 'test'; $ojb->$func();
PHPStorm
phpStorm 但ajax你就沒辦法判斷了
如果是查看運行調用情況參數傳遞及值的變化,可以使用php debug工具,推薦kint如果是想知道哪些文件可能會調用,可以用sublime 的在文件夾中查找以上推薦的工具都是很輕很小的。
我也沒有什麼好的方法,我說說我的做法,感覺樓主也已經試過。
PhpStorm
,点击方法,按快捷键ALT + F7
或CTRL + ALT +SHIFT +F7
查找所有使用。参数变量按F4
或CTRL + 鼠标左键
查找來源。(這種查找其實還有很多引用沒辦法找到),如循環某個物件集合中呼叫這個物件的方法如果是動態方法,如
function test()
全局搜索->test(
和->test (
如果是靜態方法,如
static function test()
全局搜索Class::test(
和Class::test (
透過上面三種步驟,還是可能遺漏,如動態參數調用,所以也要兼顧搜尋一下方法字串
'test'
PHPStorm
phpStorm 但ajax你就沒辦法判斷了
如果是查看運行調用情況參數傳遞及值的變化,可以使用php debug工具,推薦kint
如果是想知道哪些文件可能會調用,可以用sublime 的在文件夾中查找
以上推薦的工具都是很輕很小的。