149 lines
5.4 KiB
Text
149 lines
5.4 KiB
Text
|
|
||
|
|
||
|
zodiac - advanced dns spoofer
|
||
|
|
||
|
readme file
|
||
|
|
||
|
|
||
|
|
||
|
0. content
|
||
|
|
||
|
compilation ...................................................... 1
|
||
|
features and description ......................................... 2
|
||
|
overview of weak points in the domain name service ............... 3
|
||
|
spoofing descriptions ............................................ 4
|
||
|
hints for effective spoofing ..................................... 5
|
||
|
|
||
|
about ............................................................ 6
|
||
|
greetings ........................................................ 7
|
||
|
|
||
|
legal stuff / disclaimer ......................................... 8
|
||
|
|
||
|
|
||
|
|
||
|
1. compilation
|
||
|
|
||
|
read "INSTALL"
|
||
|
|
||
|
2. features and description
|
||
|
|
||
|
basic features include:
|
||
|
|
||
|
DONE - sniffing of dns datagrams on an ethernet device
|
||
|
DONE - decoding of all types of dns packets, including safe decompression
|
||
|
? - nice display and gui
|
||
|
DONE - always interactive in all situations
|
||
|
DONE - threaded and flexible design
|
||
|
|
||
|
advanced features include:
|
||
|
|
||
|
DONE? - local dns spoof
|
||
|
- jizz dns spoof, exploiting a weakness in some named's implementations
|
||
|
- determines jizz-weakness, id-prediction and resolver type remotely
|
||
|
- id spoofing, exploiting a weakness in the dns protocol itself
|
||
|
- implements some advanced dns denial of service attacks, including
|
||
|
flood, label compression and unres attack, advanced dns smurf
|
||
|
|
||
|
|
||
|
3. overview of weak points in the domain name service
|
||
|
|
||
|
- connectionless, udp based, independent protocol
|
||
|
|
||
|
the dns protocol can utilize tcp and udp as transportation protocols.
|
||
|
however, nearly all domain name servers use udp, because it has two
|
||
|
great advantages over tcp: it has little overhead and it doesn't need
|
||
|
time to establish a connection, it can just send data directly.
|
||
|
|
||
|
this is one of the reasons why the dns protocol is attackable, because
|
||
|
it uses a stateless protocol to deliver it's data, and extends this with
|
||
|
just some weak state variables inside the dns header.
|
||
|
|
||
|
stateless protocols can be spoofed easily, this is true for udp also. so
|
||
|
the spoof-security has to be guaranteed by the protocol on top of it, in
|
||
|
this case the dns protocol.
|
||
|
|
||
|
- broad usage, compatibility over security
|
||
|
|
||
|
since the dns protocol is very popular it has to be compatible with as
|
||
|
much servers as possible. the dns standard is written down in two
|
||
|
technical documents, the so called rfc's, for dns it is rfc 1034 and
|
||
|
1035.
|
||
|
a dns server often has to handle hundrets of requests from hundrets of
|
||
|
different machines at the same time, to understand them they have to fit
|
||
|
the format defined in the rfc's, any violation may render the request
|
||
|
to be dropped. this makes it nearly impossible to extend the dns protocol
|
||
|
within the tight borders given by the rfc.
|
||
|
|
||
|
- old, ineffective
|
||
|
|
||
|
the dns protocol we use today has been established 1987. at this time
|
||
|
the internet was not as popular as today, and although there has been
|
||
|
incidents in which protocol security has been compromised there was no
|
||
|
real sense of security when the protocol was designed.
|
||
|
|
||
|
therefore the protocol is functional and obviously working but is
|
||
|
lacking any security implementation. the dns id was never intended to be
|
||
|
used for security, just to sort the answers of the remote dns server
|
||
|
more quickly (the same applies to the isn of a tcp connection, they were
|
||
|
never intended to stop ip/tcp spoofing).
|
||
|
|
||
|
also dns turned out to be a quite ineffective protocol in large net-
|
||
|
works. there are estimations that 20% of all internet traffic are dns
|
||
|
traffic. dns caching is used to avoid too much traffic, therefore
|
||
|
exposing another way to compromise dns security.
|
||
|
|
||
|
also the dns protocol is centralized, which means there are more
|
||
|
important computers than others in dns design, therefore it's clearly
|
||
|
obvious which computers are subject to attacks (those that cache for
|
||
|
many computers).
|
||
|
|
||
|
|
||
|
4. spoofing descriptions
|
||
|
|
||
|
not yet
|
||
|
|
||
|
5. hints for effective spoofing
|
||
|
|
||
|
not yet
|
||
|
|
||
|
6. about
|
||
|
|
||
|
the program has been written by members of team teso and smiler.
|
||
|
a helpful patch has been submitted by noah williamsson <tm@ns2.crw.se>.
|
||
|
|
||
|
the vulnerabilities the program exploits have been discovered by other
|
||
|
persons, the adm crew deserves credit for the dns id spoofing technique.
|
||
|
|
||
|
the dozends of mindful people from the bugtraq mailing list that messed
|
||
|
with dns also deserve credits :)
|
||
|
|
||
|
|
||
|
7. greetings
|
||
|
|
||
|
(from scut)
|
||
|
|
||
|
in alphabetical order :-D
|
||
|
|
||
|
acpizer, avoozl, axhate, blackb, blow, bigblue, crestor, davy, domnar,
|
||
|
edi, focht, foxfire, fungus, garry, hendy, hoopy, js, kafka, lorian,
|
||
|
mindtrip, moc, overhead, oxigen, packwahn, plasmoid, random, route,
|
||
|
smiler, spy, tb303, tis, toniq, typo, vax, waterloo, wildandi, wilkins,
|
||
|
yks, yodler, zap.
|
||
|
|
||
|
special greetings to
|
||
|
|
||
|
smiler, :-)
|
||
|
the adm crew, for finding the id vulnerability, but lack a good coding
|
||
|
style ;-)
|
||
|
foxfire, for giving me some nice packet dumps to play with
|
||
|
oxigen, for giving me some hints about dns spoofing
|
||
|
rfc1035, for giving me any information about any dns packet
|
||
|
ken williams, for just being so cool B-)
|
||
|
|
||
|
|
||
|
8. legal stuff / disclaimer
|
||
|
|
||
|
know what you do before you do it, be able to face it's consequences.
|
||
|
|
||
|
|