Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 4 reacties
Bron: MaraDNS

MaraDNS is geschreven met het uitgangspunt om een veilige en compacte dns aan te bieden. Zo gebruikt het een eigen library om buffer overflows te voorkomen en draait het niet in een root account maar als een unprivileged user. Voor een vergelijking met andere pakketten kan je op deze pagina het n en ander doorlezen, let daarbij wel op dat het geschreven is door de ontwikkelaar van MaraDNS waardoor de beweringen enigszins gekleurd kunnen zijn. Versie 1.3.07.05 is sinds kort beschikbaar in de beta testing branch met de volgende lijst van aanpassingen:

Version 1.3.07.05:
  • Advocacy documented updated to be current with MaraDNS and a couple of abandoned DNS servers; references added to support list of DjbDNS bugs.
  • Security document updated.
  • Tutorials updated to point out one can have the recursor use custom name resolution for subtrees of the DNS space.
  • SQA tests to test all mararc dictionary variables added.
  • maraconf.sh updated
  • FAQ updated
Version 1.3.07.04:
  • Bugfix: Cause of improper rotation of resource records found and fixed. I would like to thank Michael Krieger for his bug report.
  • Cleanup: MinGW32 compile-time warnings removed
  • Documentation: All SQA regressions now have README files; zoneserver man page now has example mararc file
  • Patch contributed by Joerg Sonnenberger making things easier to compile in DragonflyBSD
  • Install.sh directory for documentation fixed. I would like to thank Brandon Holbrook for his bug report.
  • SQA meta-script that runs and verifies all SQA regressions added
  • SQA tests added: Spurious "bad query" messages, "percent" parse bug (doesn't seem to ever have been a real bug), "noat" parse bug, Star handling when bind_star_handling has a value of 1, improper RR rotation bug, and making sure the example mararc file in the zoneserver man page is correct
Version 1.3.07.03:
  • Bugfix: It is now possible to have a csv2_default_zonefile without any other zonefiles (This was a 1.3-only bug)
  • Bugfix: recurse_delegation now correctly works (1.3-only bug)
  • Cleanup: Documentation files with DOS-style newlines converted to have UNIX-style newlines
  • Script to update MaraDNS can now be run from a POSIX-compliant /bin/sh, and no longer uses bash-specific syntax
  • RFC2181 compliant truncation regression finished
  • SQA tests added: ANY and case insensitivity, LOC records, bind_star_handling set to 2, csv2_default_zonefile, NS delegation tests
Version 1.3.07.02:
  • Bugfix: askmara no longer goes in to an infinite loop when it receives an invalid TXT record
  • Bugfix: csv2 parser now makes sure that TXT chunks are no longer than 255 characters in all cases.
  • SQA regressions added: RFC2181 compliant truncation, askmara bug, csv2 parser long TXT chunk bug.
Version 1.3.07.01:
  • Documentation for the bind2csv2.py utility the converts zone files from BIND to MaraDNS format added.
Version 1.3.06:
  • Bugfix: If bind_star_handling was set to 2, MaraDNS would leak memory when the existance of another RR stopped resolution using a star record.
  • Bugfix: bind_star_handling, when set to 2, now appears to do the right thing.
  • Testing: Unit tests for the five memory leaks that have appeared in the 1.2/1.3 branches of MaraDNS.
  • Bugfix: The default max_mem is now a lot bigger when we need threads to perform recursion.
Version 1.3.05:
  • New mararc variable, max_mem added, that limits the amount of memory MaraDNS will allocate.
  • Bugfix: Whether to give a NXDOMAIN or a "not there" reply with star records fixed to be RFC1034 and RFC4074 compliant.
  • Bugfix: Reply for hosts not in a csv2_default_zonefile now correctly return a "not there" instead of a NXDOMAIN (unless there is no host of any RR type that matches the desired name).
  • Bugfix: Joo Antunes Predator tool found two memory leaks. Fixed.
Version 1.3.04:
  • Remco pointed out that MaraDNS is not RFC4074 section 4.2 compliant. Fixed.
  • Update of recursive server to make it more robust against certain DOS attacks.
  • The port range that the recursive resolver binds to can now be changed in the mararc file
  • FAQ and SQA updates
Version 1.3.03:
  • Memory leak found by Rani Assaf plugged; SQA suite now has regression that will find this leak.
  • Whether to recurse when MaraDNS would otherwise give out a NS delegation record is now a user-settable feature.
  • Bugfix: '.' can now be a hostname by itself.
  • Bugfix: MaraDNS now compiles with gcc 2.96 again.
  • The version.maradns special query now works in a 100% recursive server again (as long as admin_acl is set and gives permissions).
  • When the tilde is used to separate records, it is no longer necessary to have some of the WKS or LOC fields be on the same line.
  • When the tilde is used to separate records, it is no longer possible to have a pipe (|), hash (#), or nonprintable control character in a TXT record. This will make parsing of csv2 files by scripts easier.
  • When the tilde is used to separate records, multiple TXT chunks can now be separated by whitespace. This allows for foo.% TXT 'chunk 1' 'chunk 2' records.
  • Documentation updates.
Versienummer:1.3.07.05
Releasestatus:Beta
Besturingssystemen:Windows 2000, Linux, BSD, Windows XP, UNIX, Windows Server 2003
Website:MaraDNS
Download:http://www.maradns.org/download.html
Licentietype:Voorwaarden (GNU/BSD/etc.)
Moderatie-faq Wijzig weergave

Reacties (4)

Zo gebruikt het een eigen library om buffer overflows te voorkomen(...)
Security through obscurity? De source is openbaar, dus ik snap niet goed hoe ze dat willen bereiken.
Waarschijnlijk doelen ze erop dat ze een eigen library hebben (dus zelf geschreven) die op een manier is gecodeerd dat er geen buffer-overflows kunnen plaatsvinden, bijvoorbeeld omdat de code zo compact is dat het alleen de functies heeft die MaraDNS nodig heeft. Dat de source beschikbaar is, is alleen maar goed, want elke ontwikkelaar die de source inziet en een fout vindt, kan een verbetering aanbrengen of een suggestie insturen.
Waarschijnlijk ken je niet het principe van "Not Invented Here".
Ik maak hier zelf ook gebruik van als ik bijvoorbeeld software schrijf voor beveiligings systemen.

( Anti Winkel Diefstal en Anti Inbraak, ik geef toe heb het al een jaar of twee niet meer gedaan. )

Infeite ga je er vanuit dat als jij die code niet geschreven hebt je er ook geen idee van hebt wat voor "problemen" die code heeft. Heel veel programma's hebben zelf geen bugs maar zijn wel gevoelig voor bijvoorbeeld buffer-overflows omdat een library/component die je gebruikt daar kwetsbaar voor is.

Een probleem die erg lastig is om oplossen aangezien je afhankelijk bent van de ontwikkelaar van die library/component code. Tenzij het opensource is en er je eigen versie van kan maken.

In Delphi gebruik ik dus in zo'n geval geen standaard components tenzij dat echt nodig is. Voor bijvoorbeeld de GUI. Maar zodra het programma af is sloop ik de realtime library zodat ik een custom versie ervan heb die alleen maar de code gebruikt die ik echt nodig heb en dat ik die code ook kan nakijken en eventueel aanpassen om bepaalde problemen te voorkomen.

Het is een vrij paranoide manier van software schrijven ook al denk ik dat de C/C++ schrijvers zich er wel in kunnen vinden. Het voordeel in Delphi is ook dat de executable veel kleiner is.

Het is wel erg veel extra werk, maar dat moet je er voor over hebben!

[Reactie gewijzigd door Psychatic op 24 september 2007 23:56]

Of ze willen gewoon niet afhankelijk zijn van de code van iemand anders.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True