ThinkPHPÔÙ±¬¸ßΣÎó²î ÍòÀû¹ú¼Ê¹ÙÍøÌṩ½â¾ö¼Æ»®
Ðû²¼Ê±¼ä 2019-01-132019Äê1ÔÂ11ÈÕ¹Ù·½ÐÞ¸´ÁËÒ»´¦ÑÏÖØµÄÎó²î£¬£¬£¬£¬£¬¸ÃÎó²î¿Éµ¼ÖÂÔ¶³ÌÏÂÁî´úÂëÖ´ÐС£¡£¡£¡£¡£¡£¡£
Îó²îÓ°Ïì°æ±¾£º
5.0.x-5.0.23
Îó²îÆÊÎö£º
Îó²îÖ÷Òª·ºÆðÔÚThinkPHPRequestÀàµÄmethodÒªÁìÖУ¬£¬£¬£¬£¬(thinkphp/library/think/Request.php)
RequestÀà¿ÉÒÔʵÏÖ¶ÔHTTPÇëÇóµÄһЩÉèÖ㬣¬£¬£¬£¬ÆäÖгÉÔ±ÒªÁìmethodÓÃÀ´»ñȡĿ½ñÇëÇóÀàÐÍ£¬£¬£¬£¬£¬Æä½ç˵ÈçÏ£º
thinkphpÖ§³ÖÉèÖá°±íµ¥Î±×°±äÁ¿¡±£¬£¬£¬£¬£¬Ä¬ÈÏÇéÐÎϸñäÁ¿ÖµÎª_method£¬£¬£¬£¬£¬¿ÉÒÔͨ¹ý¡°±íµ¥Î±×°±äÁ¿¡±¾ÙÐбäÁ¿ÁýÕÖʵÏÖ¶Ô¸ÃÀàí§Ò⺯ÊýµÄŲÓ㬣¬£¬£¬£¬²¢ÇÒ$_POST×÷Ϊº¯ÊýµÄ²ÎÊý´«Èë¡£¡£¡£¡£¡£¡£¡£
Requset½á¹¹º¯ÊýÈçÏ£º
Òò´Ë¿ÉÒÔͨ¹ý½á¹¹º¯ÊýʵÏÖ¶ÔRequestÀàÊôÐÔ¾ÙÐÐÁýÕÖ£¬£¬£¬£¬£¬ÈçfilterÊôÐÔ¡£¡£¡£¡£¡£¡£¡£½á¹¹ÈçÏÂpayloadʵÏÖÔ¶³Ì´úÂëÖ´ÐУº
Ô¶³Ì´úÂë×îÖÕÊÇÔÚfilterValueÖеÄcall_user_func()Ö´ÐУº
ÔÚ¹ÙÍøÏÂÔØµÄ5.0.23ÍêÕû°æÖУ¬£¬£¬£¬£¬ÔÚAppÀࣨthinkphp/library/think/App.php£©ÖÐmoduleÒªÁìÔöÌíÁËÉèÖÃfilter²ÎÊýÖµµÄ´úÂ룬£¬£¬£¬£¬ÓÃÓÚ³õʼ»¯filter¡£¡£¡£¡£¡£¡£¡£Òò´Ëͨ¹ýÉÏÊöÇëÇóÉèÖõÄfilter²ÎÊýÖµ»á±»ÖØÐÂÁýÕÖΪ¿Õµ¼ÖÂÎÞ·¨Ê¹Óᣡ£¡£¡£¡£¡£¡£
ÔÚ5.0.23 RequestÀàÖÐÓиöparam³ÉÔ±º¯ÊýÓÃÓÚ»ñȡĿ½ñÇëÇóµÄ²ÎÊý£¬£¬£¬£¬£¬Ò²Óиömethodº¯Êý£º
µ±´«ÈëÊýֵΪtrueʱ£º
¸ú½øµ½serverÒªÁ죬£¬£¬£¬£¬²ÎÊý$nameΪREQUEST_METHOD
$dataΪÉÏÒ»²½µÄREQUEST_METHOD£º
ÒªÏë´¥·¢Å²ÓÃparam()£¬£¬£¬£¬£¬Ö»Òª¿ªÆôÁËdebugģʽ¼´¿É£º
¹Ê½á¹¹payloadÈçÏ£º
Ç°ÃæÆÊÎö¿ÉÖª£¬£¬£¬£¬£¬ÎÒÃÇÐèÒª´¥·¢RequestÀàÖеÄparamº¯ÊýÀ´Íê³ÉfilterµÄÁýÕÖ£¬£¬£¬£¬£¬ÔÚAppÀàÖÐexec()ÒªÁìÖе±$dispatch[¡®type¡¯]Ϊcontroller ºÍmethodʱÓÐÖ±½ÓµÄŲÓãº
¶øurlÖÐsµÄÖµÍê³ÉÉèÖòî±ðµÄ$method£¬£¬£¬£¬£¬×îÖÕÈÃrouteCheck·µ»ØÎÒÃÇÐèÒªµÄ$dispath¼´¿É¡£¡£¡£¡£¡£¡£¡£ÀýÈç½á¹¹ÈçÏÂpayload£¬£¬£¬£¬£¬ÎÞÐèdebugģʽ¿ªÆôÒ²¿ÉʵÏÖÔ¶³Ì´úÂëÖ´ÐУº
½â¾ö¼Æ»®£º
Ò»¡¢¹Ù·½½¨Ò飺
ÊÜÓ°ÏìµÄÓû§¿É½«5.0.xÉý¼¶µ½5.0.24£¬£¬£¬£¬£¬¹Ù·½ÏÖÒÑÍÆ³ö²¹¶¡£¬£¬£¬£¬£¬½¨Ò鿪·¢Õß¾ÙÐÐÐÞ¸´£º
ÒѰ²ÅÅÍòÀû¹ú¼Ê¹ÙÍøIDS¡¢IPS¡¢WAF²úÆ·µÄ¿Í»§ÇëÈ·ÈÏÈçÏÂÊÂÎñ¹æÔòÒѾÏ·¢²¢Ó¦Ó㬣¬£¬£¬£¬¼´¿ÉÓÐÓüì²â»ò×è¶Ï¹¥»÷£ºHTTP_ThinkPHP5.0È«°æ±¾Ô¶³Ì´úÂëÖ´ÐÐÎó²î
£¨1£©ÌìãÙÈëÇÖ¼ì²âÓëÖÎÀíϵͳ±¨¾¯½ØÍ¼£º
£¨2£©ÌìÇåÈëÇÖ·ÀÓùϵͳ±¨¾¯½ØÍ¼£º
£¨3£©ÌìÇåWebÓ¦ÓÃÇå¾²Íø¹Ø±¨¾¯½ØÍ¼£º



¾©¹«Íø°²±¸11010802024551ºÅ