Attackers use encoding to bypass basic signature-based filters.
In 2021, a popular open-source CMS was found vulnerable to LFI via a parameter template= . Attackers sent: -include-..-2F..-2F..-2F..-2Froot-2F
It looks like you’ve provided a path traversal pattern ( -include-../../../../root/2F etc.) rather than a full request. and /root won’t be accessible.
If dynamic filenames are necessary, use functions that strip path traversal characters. The basename() function in PHP, for example, strips out all directory paths and returns only the actual filename. -include-..-2F..-2F..-2F..-2Froot-2F
Run the web application in a chroot jail or container that limits filesystem access to only the necessary directories. Even if an attacker injects -include-../../../../root/ , the path will be resolved within the jail, and /root won’t be accessible.