作者 杨育虎

代码漏洞

@@ -374,6 +374,10 @@ class App @@ -374,6 +374,10 @@ class App
374 $controller = strip_tags($result[1] ?: $config['default_controller']); 374 $controller = strip_tags($result[1] ?: $config['default_controller']);
375 $controller = $convert ? strtolower($controller) : $controller; 375 $controller = $convert ? strtolower($controller) : $controller;
376 376
  377 + if (!preg_match('/^[A-Za-z](\w|\.)*$/', $controller)) {
  378 + throw new HttpException(404, 'controller not exists:' . $controller);
  379 + }
  380 +
377 // 获取操作名 381 // 获取操作名
378 $actionName = strip_tags($result[2] ?: $config['default_action']); 382 $actionName = strip_tags($result[2] ?: $config['default_action']);
379 $actionName = $convert ? strtolower($actionName) : $actionName; 383 $actionName = $convert ? strtolower($actionName) : $actionName;