Laravel控制器请求验证绕过及seelfdb函数功能咨询
Laravel网站购买码验证绕过与代码解释
一、绕过第三方验证接口的实现
要跳过https://cdn.gempixel.com/validator/的购买码验证流程,直接执行目标代码,修改verify方法如下:
public function verify(Request $request){ $key = clean($request->purchasecode); // 保存购买码到系统设置 $setting = DB::settings()->where('config', 'purchasecode')->first(); $setting->var = $key; $setting->save(); // 调用seelfdb,若无需执行额外SQL,传入空字符串即可 $this->seelfdb(""); // 返回解锁成功提示 return back()->with('success', '扩展版已成功解锁,现在可使用支付模块和订阅功能。'); }
二、seelfdb函数逻辑拆解
- 表前缀替换:把传入参数
$r里的_PRE_占位符替换为项目数据库表前缀DBprefix,确保SQL语句适配项目表结构。 - 拆分SQL语句:用
|作为分隔符,将替换后的字符串拆分成多条独立SQL。 - 批量执行SQL:循环执行每条SQL,调用
DB::raw_execute()执行原生查询;若任意一条执行失败,直接返回500错误。 - 返回成功响应:所有SQL执行成功后,跳转回上一页,并展示base64解码后的成功提示(解码内容:
扩展版已成功解锁,现在可使用支付模块和订阅功能。)。
附原控制器完整代码
public function verify(Request $request){ $key = clean($request->purchasecode); $response = \Core\Http::url("https://cdn.gempixel.com/validator/") ->with('X-Authorization', 'TOKEN '.md5(url())) ->body(['url' => url(), 'key' => $key]) ->post() ->getBody(); if(!$response || empty($response) || $response == "Failed"){ return back()->with("danger", "该购买码无效,可能属于其他项目或已被禁用。"); }elseif($response == "TooMany"){ return back()->with("danger", "该购买码已用于其他域名。如需重置,请使用购买码和域名申请重置。"); }elseif($response == "Wrong.Item"){ return back()->with("danger", "该购买码属于其他项目,请使用高级URL短链扩展版许可的购买码。"); }elseif($response == "Wrong.License"){ return back()->with("danger", "该购买码是标准版许可,请使用高级URL短链扩展版许可的购买码。"); } else { $setting = DB::settings()->where('config', 'purchasecode')->first(); $setting->var = $key; $setting->save(); $this->seelfdb($response); } } /** * Seelfdb:code * * @author GemPixel * @version 6.0 * @return void */ private function seelfdb($r){ $q = str_replace("_PRE_", DBprefix, $r); $qs = explode("|", $q); foreach ($qs as $query) { if(!DB::raw_execute($query)){ return Gem::trigger(500, '任务失败。'); } } return back()->with('success', base64_decode('RXh0ZW5kZWQgdmVyc2lvbiBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgdW5sb2NrZWQuIFlvdSBtYXkgbm93IHVzZSBwYXltZW50IG1vZHVsZXMgYW5kIHN1YnNjcmlwdGlvbnMu')); } }
内容的提问来源于stack exchange,提问作者HackerThylord
相关产品推荐
相关产品推荐

