TinyShop SQL注入(开启GPC,绕过过滤)

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: 之前的都是找程序员的疏忽,这个位置是绕过程序的防注入。 ### 详细说明: 环境: GPC = On ``` public static function sql($str) //过滤函数 { if (!get_magic_quotes_gpc()){ //gpc off 就转义,把之前那个奇葩的漏洞补了 //不使用主要是因为,先有mysql的连接 //$str = mysql_real_escape_string($str); $str = addslashes($str); } $str = preg_replace('/([^a-z]+)(select|insert|update|delete|union|into|load_file|outfile|tiny_)/i', ' $2', $str); //这个过滤是可以绕过的 return $str; } ``` 仔细找发现过滤函数中存在另外一个函数:text 内容如下: ``` /**@param $str 字符串 * @return 字符串 *@note 处理HTML编辑器的内容,主要是解决JavaScript的注入问题 */ public static function text($str) { $config = HTMLPurifier_Config::createDefault(); $cache_dir=Tiny::getPath('cache')."/htmlpurifier/"; if(!file_exists($cache_dir)) { File::mkdir($cache_dir); } $config = HTMLPurifier_Config::createDefault(); //配置 缓存目录 $config->set('Cache.SerializerPath',$cache_dir); //设置cache目录 //配置 允许flash $config->set('HTML.SafeEmbed',true); $config->set('HTML.SafeObject',true); $config->set('Output.FlashCompat',true); //$config->set('HTML.Allowed', 'p');...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息