Polardns

Latest version: v1.6.3

Safety actively analyzes 723954 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 2

1.3

- enhanced the `nfz` modifier, which can now produce 45 different parametrized domain name variants
- added tests for the `nfz` name fuzzing modifier (total test count: 545)
- updated the catalogue documentation

03/Jun/2024
- the `schain` feature renamed to `alias` to be consistent with the rest of cn/dn/ht/sv/sr/mx alias features
- the `loop`, `chain` and `alias` features now also support the CNAME/DNAME/HTTPS/SVCB/SRV/MX record types
- added tests for all the new variants (total test count: 438)
- updated the catalogue documentation

31/May/2024
- added the `cnloop`, `cnchain` and `cnalias` features responding with CNAME records
- added the `dnloop`, `dnchain` and `dnalias` features responding with DNAME records
- added the `htloop`, `htchain` and `htalias` features responding with HTTPS records
- added the `svloop`, `svchain` and `svalias` features responding with SVCB records
- added the `srloop`, `srchain` and `sralias` features responding with SRV records
- added the `mxloop`, `mxchain` and `mxalias` features responding with MX records
- added the `nfz` modifier for name fuzzing, which can be utilized in various features
- added tests for all the new features (total test count: 384)
- updated the catalogue documentation

30/May/2024
- optimized the random number generation everywhere to use the random.getrandbits() function which is fastest

29/May/2024
- improved the startup module loading logic to be more robust and user-friendly

1.2

28/May/2024
- added the `httpsloop` feature for creating alias loops in HTTPS records (RFC 9460)
- added the `httpschain` feature for creating infinite alias chains in HTTPS records (RFC 9460)
- added the `svcbloop` feature for creating alias loops in SVCB records (RFC 9460)
- added the `svcbchain` feature for creating infinite alias chains in SVCB records (RFC 9460)
- added the `dloop` feature for creating alias loops in DNAME records
- added tests for all the new features (total test count: 344)
- updated the catalogue documentation
- small code fixes in polardns.py

23/May/2024
- added the `self` feature for returning the client's IP address (aka. what is my IP)

08/May/2024

1.1

- update of the documentation
- upon startup, sort the modules in alphabetical order during the construction of polardns_real.py

08/May/2024
- major update of the contribution page
- added steps how to implement new features to PolarDNS
- added steps how to debug PolarDNS in the contribution page

08/May/2024
- added support for standalone feature modules in the form of `.toml` files
- moved the majority of existing features to a modular format
- major cleanup of the polardns codebase
- major review of the variables scope and naming conventions in the code
- adopting a more object-oriented approach for DNS request and DNS response variables

07/May/2024

1.0

- relocated the BHMEA presentations to another online location

31/Jan/2024
- removed the empty1 test from test.sh, because dig behaves differently when run remotely vs. locally due to ethernet padding
- removed the hard coded IP in the sed command

12/Jan/2024
- edited the test.sh and Dockerfile to use the toml file
- added port and timeout feature to test.sh
- changes to test.sh to permit tests that use a hard coded IP in the DNS response to pass.
- added a comment to the readme about the dig version required for tests.

09/Nov/2023
- cleanup of the `manylabels` feature
- cleanup of the `afuzz1` and `afuzz2` features
- enhanced the `cgena` and `cgenb` features, added more variants

08/Nov/2023
- enhanced the `dotcname` feature, added more variants
- cleanup of the `cgena` and `cgenb` features

07/Nov/2023
- cleanup of the `cutabuf` and `cutcnamebuf` features, should make these as response modifiers in the future (todo)

06/Nov/2023
- added empty/incomplete responses, namely the `timeout` and `close` features
- socketserver has certain limitations when it comes to these features
- cleanup of the alias chain scenarios

03/Nov/2023
- added empty/incomplete responses, namely the `empty5`, `empty6` and `empty7` features
- fixed a bug in the logging causing an exception under certain circumstances

01/Nov/2023
- improved the tests to automatically read the domain name from the polardns.yml
- improved the tests to be indepent on the domain name

29/Oct/2023
- added support for a config file (polardns.yml)
- the domain name and the IPs are now configurable via the config file

19/Oct/2023
- added support for SOA records in the ZONEFILE

18/Oct/2023
- fixed problem with dots `.` in the query domain name not being reflected in the response properly
- enhanced the tests and added 41 more tests (total test count: 293)

17/Oct/2023
- added support for getting version information using `dig version.polar CH TXT` command

16/Oct/2023
- added functionality for CNAME loops

27/Sep/2023
- fixed exception in the `close` feature in UDP mode

26/Jul/2023
- added `flgs` global modifier to allow specifying custom flags in the DNS header

10/Jul/2023
- optimization: got rid of the parsing the request in HEX, parsing it in RAW now
- enhanced parsing of the domain name in the request (added the backslashreplace option in decode())

05/Jul/2023
- added a collection of tests (total test count: 252)

16/Jun/2023
- fixed exceptions when parsing various incomplete requests, too short DNS packets etc.

Page 2 of 2

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.