Я бы не стал устанавливать GoodbyeDPI на серьёзную машину, на которой множество конфиденциальных данных, особенно на рабочий компьютер/ноутбук с доступом в корпоративную сеть. Причин несколько:
Я не профессиональный программист вообще и на C в частности;
- Код использует UB и математику с указателями, потому что в C иначе не получается — куча пространства для ошибок;
- Программа не проходила аудита кода даже моими глазами;
- Драйвер WinDivert не проходил аудита кода и периодически вызывает несовместимости с другими драйверами с BSOD'ами (даже если ошибка не непосредственно в WinDivert).
- Программа была написана по приколу, чтобы потренироваться в фильтрации пакетов на Windows. Я не пользуюсь Windows чёртову дюжину лет. Иными словами, я очень нерегулярно сам использую GoodbyeDPI.
Что может произойти?
- В программе найдут уязвимость, связанную с обработкой данных в пакете, с переполнением буфера, с возможностью эксплуатации на стороне сервера ⇒ вам прогрузят код с привилегиями SYSTEM, украдут все данные и заразят компьютер.
- В драйвере WinDivert найдут аналогичную уязвимость ⇒ вам прогрузят код с привилегиями ядра, украдут все данные и заразят компьютер потенциально так, что антивирусы не обнаружат заражение.
Это всё применимо к совершенно любой программе в целом, но к GoodbyeDPI в этом плане стоит относиться особенно настороженно, т.к. и сама программа, и драйвер запущены с максимальными привилегиями, а код и того, и другого написан любителями.
До сих пор периодически пишут об ошибках запуска на необновленных Windows 7 c MS17-010, на таких системах потенциальные проблемы от GoodbyeDPI вообще не имеют никакого значения — вас куда быстрее проэксплуатируют через другой десяток уязвимостей :D
{
"editor.suggestOnTriggerCharacters": false,
"editor.quickSuggestions": {
"other": false,
"comments": false,
"strings": false
},
"editor.parameterHints.enabled": false,
"editor.autoClosingBrackets": "never",
"editor.autoClosingQuotes": "never",
"editor.autoClosingOvertype": "never",
"editor.autoIndent": "none",
"editor.autoSurround": "never",
"editor.formatOnType": false,
"editor.formatOnPaste": false,
"editor.formatOnSave": false,
"editor.hover.enabled": false,
"editor.wordBasedSuggestions": false,
"editor.acceptSuggestionOnEnter": "off",
"editor.snippetSuggestions": "none",
"editor.tabCompletion": "off",
"editor.inlineSuggest.enabled": false,
"html.autoClosingTags": false,
"json.schemas": [],
"launch": {
"configurations": [],
"compounds": []
}
}