IpAccessControl Security Policy

LLM-Generated Security Report Policy

Absolutely no security reports will be accepted that have been generated by LLM agents.

Exclusions

IpAccessControl should be secure by default, but it depends on correct usage. Adam Pritchard wrote an extensive post on the perils of discovering the "real" client IP. Because this module is intended for security, you should be behind a proxy that you control or trust and reading the rightmost IP in the derived remote IP address list.

The key points he makes are:

If you use the "real client IP" anywhere in your code or infrastructure, you need to go check right now how you're deriving it.

The authors of IpAccessControl have used the remote_ip plug for resolving IP addresses from proxy headers successfully in the past, but the configuration of that or a similar plug is entirely outside of the purview of this library.

Vulnerability reports should only be reported after incorrect configuration has been eliminated.

Supported Versions

Security reports are accepted for the most recent major release with support for the previous major version ending immediately.

IpAccessControl supports at most the three most recent versions of Elixir and supported Erlang/OTP versions.

As of January 2026, the support list is:

Elixir Erlang
1.17 25, 26, 27
1.18 25, 26, 27, 28
1.19 26, 27, 28

The oldest supported version of Elixir will not be deprecated until six months after the release of a new version of Elixir.

Reporting a Vulnerability

Create a private vulnerability report with GitHub.