| Título | wuzhicms <=4.1.0 SSRF |
|---|
| Descrição | The rich-text editor's remote-image-fetch feature, attachment::ckeditor(), performs no login-state/cookie validation whatsoever (in stark contrast to file_brower() in the same file, which does require authentication). The action=catchimage branch calls ckditor::saveRemote(), which takes URLs from the user-submitted source[] array and hands each one to Uploader::saveRemote(). That method's only validation on the URL is strpos($imgUrl,"http")!==0 (merely requiring an http prefix) — there is no internal/private IP blacklist, no domain whitelist, and no port restriction. It then directly calls get_headers($imgUrl,1) and readfile($imgUrl,false,$context), causing the server to issue a request, under its own network identity, to any attacker-specified host:port. |
|---|
| Fonte | ⚠️ https://github.com/wuzhicms/wuzhicms/issues/221 |
|---|
| Utilizador | ZAST.AI (UID 87884) |
|---|
| Submissão | 18/08/2026 12h07 (há 30 dias) |
|---|
| Moderação | 16/09/2026 09h43 (29 days later) |
|---|
| Estado | Aceite |
|---|
| Entrada VulDB | 405512 [WuzhiCMS até 4.1.0 Remote Image Fetch index.php ckditor::saveRemote source[] Elevação de Privilégios] |
|---|
| Pontos | 19 |
|---|