Interpretation Conflict vulnerability in benoitc hackney allows Server Side Request Forgery. hackney_url:normalize/2 URL-decodes the host component after the URL has been parsed into a #hackney_url{} record. OTP's uri_string:parse/1 and inet:parse_address/1 do not decode percent-escapes in the host, so a URL such as http://%31%32%37%2E%30%2E%30%2E%31/ is seen by a caller's allowlist validator with host %31%32%37%2E%30%2E%30%2E%31 (not an IP address), which passes the allowlist check. hackney's normalizer then decodes the host to 127.0.0.1 and opens a TCP connection to loopback. Because hackney:request/5 always calls hackney_url:normalize/2 with no opt-out, every request that takes a binary or list URL is affected. The same technique reaches cloud instance metadata services (169.254.169.254), RFC1918 networks, and any admin interface listening on localhost.
This issue affects hackney: from 0.13.0 before 4.0.1.
CVE-2026-47076 is a Server Side Request Forgery (SSRF) vulnerability in the Erlang hackney HTTP client library caused by inconsistent URL decoding between validation and normalization stages. Attackers can bypass allowlist validators using percent-encoded hostnames to access restricted internal resources like metadata services and localhost interfaces.
ثغرة تفسير التعارض في مكتبة hackney تسمح بهجمات SSRF من خلال استخدام عناوين URL مشفرة بنسبة مئوية. يتم فك تشفير المضيف بعد التحقق من قائمة السماح، مما يسمح بالوصول إلى خدمات البيانات الوصفية للسحابة والشبكات الداخلية. التأثير يشمل جميع طلبات HTTP التي تستخدم عناوين URL ثنائية أو قائمة.
This vulnerability affects Erlang-based applications in Saudi Arabia that use hackney for HTTP requests and implement URL allowlisting. Organizations relying on allowlist-based security controls may be bypassed, allowing unauthorized access to internal services and cloud metadata endpoints.
Update hackney to the patched version immediately. Implement server-side validation that decodes percent-encoded URLs before allowlist checking. Use network segmentation to restrict access to internal services (169.254.169.254, RFC1918 ranges, localhost). Deploy Web Application Firewalls (WAF) to detect and block SSRF attempts. Conduct security audit of all applications using hackney library.
قم بتحديث مكتبة hackney إلى الإصدار المصحح فوراً. طبق التحقق من صحة URL على جانب الخادم مع فك تشفير العناوين المشفرة قبل التحقق من قائمة السماح. استخدم تقسيم الشبكة لتقييد الوصول إلى الخدمات الداخلية. نشر جدران حماية تطبيقات الويب لكشف محاولات SSRF. أجرِ تدقيق أمني لجميع التطبيقات التي تستخدم hackney.