Full Disclosure mailing list archives

CVS Suite 2009R2 Insecure Library Loading CVE-2018-6461


From: hyp3rlinx <apparitionsec () gmail com>
Date: Tue, 6 Feb 2018 12:32:35 -0500

[+] Credits: John Page (aka hyp3rlinx)          
[+] Website: hyp3rlinx.altervista.org
[+] Source:  http://hyp3rlinx.altervista.org/advisories/CVS-SUITE-2009R2-INSECURE-LIBRARY-LOADING-CVE-2018-6461.txt
[+] ISR: Apparition Security


Vendor:
=============march-hare.com


Product:
===========
WINCVS 2009R2

CVS Suite is a modern versioning system that combines the power and
stability of CVS with modern easy to use client software and support
for
Configuration Management best practice. As the newest major release of
the world’s most popular versioning system, CVS Suite 2009R2 continues
CVSNT’s blazing pace of innovation with new features and usability enhacements.



Vulnerability Type:
===================
Insecure Library Loading


CVE Reference:
==============
CVE-2018-6461


Security Issue:
================
Non privileged user can write files to "C:\ProgramData\March
Hare\myrepo\CVSROOT" to gain authenticated access with the same
privileges
as the current logged on user, in addition they can run arbitrary code
with same privileges as that of the victim.

e.g.

C:\ProgramData\March Hare\myrepo\CVSROOT>cacls * | more
C:\ProgramData\March Hare\myrepo\CVSROOT\CVS Everyone:(OI)(CI)F
                                             NT AUTHORITY\SYSTEM:(OI)(CI)F


WinCVS:
Attackers can place a malicious DLLs in CVSROOT and wait for CVS user
to run WINCVS, then when browse to a repository in CVSROOT and right
click on
CVSROOT or a CVSROOT file to 'Open in new instance' or Ctrl+F2 then
the attackers DLL will execute.

Attacker supplied DLL e.g. 'python31.dll' will execute if placed on
victims desktop and user initially opens 'wicvs2.exe'.
basically anywhere or repository we can place malicious DLL that they
can browse to should work.

WinMerge 2009 also vulnerable:
If a WinMerge project file is opened from a remote share where
specific attacker supplied DLLs have been placed it will load and
execute it.

vuln DLL(s):
============
tcl87.dll
python30.dll
python31.dll

Basically anywhere or any repository we can place malicious DLL that
they can browse to should work.


References:
============http://march-hare.com/cvspro/vulnwincvs.htm


Exploit/POC:
=============
Create "python31.dll"

#include<windows.h>

//gcc -c python31.c
//gcc -shared -o python31.dll python31.o

BOOL APIENTRY DllMain(HINSTANCE hInst, DWORD reason, LPVOID reserved){
  switch (reason) {
  case DLL_PROCESS_ATTACH:
    MessageBox(NULL, "Done!", "hyp3rlinx", MB_OK);
    break;
  }

return 0;
}



Network Access:
===============
Remote


Severity:
=========
High


Disclosure Timeline:
=============================
Vendor Notification: January 26, 2018
Vendor acknowledgemen: January 27, 2018
Vendor releases fix: February 2, 2018
February 5, 2018 : Public Disclosure



[+] Disclaimer
The information contained within this advisory is supplied "as-is"
with no warranties or guarantees of fitness of use or otherwise.
Permission is hereby granted for the redistribution of this advisory,
provided that it is not altered except by reformatting it, and
that due credit is given. Permission is explicitly given for insertion
in vulnerability databases and similar, provided that due credit
is given to the author. The author is not responsible for any misuse
of the information contained herein and accepts no responsibility
for any damage caused by the use or misuse of this information. The
author prohibits any malicious use of security related information
or exploits by the author or elsewhere. All content (c).

hyp3rlinx

_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Current thread: