{
	"id": "317a295a-a0a9-454d-95f8-dbda254e4ace",
	"created_at": "2026-04-06T00:16:52.066298Z",
	"updated_at": "2026-04-10T03:20:48.907346Z",
	"deleted_at": null,
	"sha1_hash": "fe601ef3fb34f229a7cb591df36384e02136c37e",
	"title": "Borr Malware",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 1163029,
	"plain_text": "Borr Malware\r\nBy https://t.me/onek1lo_blog\r\nPublished: 2020-02-04 · Archived: 2026-04-05 23:09:53 UTC\r\nBorr Malware\r\nhttps://t.me/onek1lo_blog\r\nПродажник: https://lolzteam.online/threads/1327287/\r\nСемпл: https://twitter.com/ViriBack/status/1222704498923032576\r\nРеверс\r\nДля начала откроем файл в ExeInfoPe.\r\nИсходный семпл\r\nDotNet файл, накрытый SmartAssembly. Первым делом попытаемся скормить его De4dot.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 1 of 17\n\nРезультат не порадовал, чистого файла мы не получили. Придется смотреть вручную. Открываем файл в\r\nDnSpy, переходим в .cctor\r\n.cctor\r\nНичего интересного в этих методах я не нашел. Но зато меня привлек файл в ресурсах, очень похожий на\r\nшифрованный бинарник.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 2 of 17\n\nЗначит, в каком то куске кода он будет расшифрован и подгружен. Пропускаем методы (ставим брекпоинт\r\nв конце .cctor), шагаем и смотрим модули\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 3 of 17\n\nПодгрузилась Dll (1thzpxouagh). Сохраняем ее и открываем в DnSpy.\r\nОказывается, стиллер накрыт криптом из SmartAssembly + RunPE. Стаб использует RunPE, а значит скорее\r\nвсего в ресурсах нативный файл.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 4 of 17\n\nСмотрим ресурсы, видим шифрованный файл. В самом коде все главные методы без обфускации. Написать\r\nдекриптор будет просто.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 5 of 17\n\nПишем декриптор\r\nПосле расшифровки получаем чистый билд. Откроем его в ExeInfoPE.\r\nЧистый билд\r\nФайл нативен, и это правда. Но несовсем. Данный софт использует технологию CRL-Hosting. Грубо говоря,\r\nперед нами сейчас нативная обертка DotNet файла.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 6 of 17\n\nС точки зрения написания малвари кажется, что этот способ сокрытия кода наиболее эффективен. Однако\r\nэто не панацея. В процессе работы будет подгружен .net модуль, который легко сдампить.\r\nВ нашем случае все еще проще. Стиллер работает какое-то время, а значит можно даже не искать нужные\r\nбрекпоинты - просто запускаем приложение в дебаггере, ждем несколько секунд и ставим паузу. Net\r\nмодуль загружен, можно дампить.\r\nЛично я испльзовал x32dbg и ExtremeDumper.\r\nДампим, дампим, дампим...\r\nЧто делаем? Правильно.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 7 of 17\n\nПоследний рывок\r\nНеизвестный обфускатор. Ничего страшного, открываем в DnSpy и видим мод конфузера.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 8 of 17\n\nШо, опять?\r\nСтавим брекпоинт на Main, чекаем переменные.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 9 of 17\n\nСохраняем, открываем, уже лучше. Однако строки и методы все равно обфусцированны.\r\nТеперь пришло время заюзать спец тулзы для конфузера. В конце концов имеем чистые сурсы.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 10 of 17\n\nАнализ кода\r\nПервое что бросается в глаза - конфиг передается открытым текстом. Неужели так сложно было сделать\r\nбанальный XOR+base64? Просто несерьезно.\r\nЛоадер дропает EXE со статичным именем в TEMP. Привет рантайм.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 11 of 17\n\nДалее меня привлек конфиг. Как я понял, при запуске стиллер проверяет, действительна ли лицензия, и\r\nесли все ок то продолжает работу. Как по мне это не самый лучший подход. Что если сервер/ip забанят?\r\nКак этот запрос в сеть скажется на рантайме, учитывая что все билды будут стучать на этот хост?\r\nКстати, вот сюда стучит софт при запуске.\r\nСбор данных с браузера осуществляется с помощью дроченого SqliteHandler.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 12 of 17\n\nЯ не знаю почему все юзают CryptUnprotectData, когда есть System.Security.Cryptography.ProtectedData\r\nСтиллер outlook в наглую спизжен с моих сурсов. Даже не оптимизировали по нормальному.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 13 of 17\n\nМожно было бы добавить больше FTP.\r\nЛог собирается на диске, причем папка дропа статична. Снова рантайм.\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 14 of 17\n\nИ самое большое огорчение - граббер. Софт/панель не предусматривают возможность добавления\r\nсобственных путей сбора файлов.\r\nВ топике было написано о обходе WindowsDefender, но где этот обход находится я так и не нашел. Детект\r\nчистого файла.\r\nСоздается впечптление что софт написан на похуй. Ни многопоточности, ни каких то других фишек -\r\nабсолютно дефолтный стиллер с дефолтными методами с гитхаба.\r\nНа этом желание копать дальше пропало - все это я уже видел.\r\nПанель\r\nВ командах (?) Borr и Krown один и тот же web кодер, поэтому их панели похожи.\r\nBorr\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 15 of 17\n\nKrown\r\nНастройки граббера\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 16 of 17\n\nПоиск по логам\r\nНужно отдать должное, панель в этом софте выглядит круто. Но настройки конфига скудноваты (имхо).\r\nИтог\r\nBorr Stealer - салат из правленных исходников с гитхаба с минимумом новизны и щепоткой конфузера.\r\n-Путей сбора файлов мало\r\n-При этом добалять свои пути невозможно\r\n-Судя по стилю написания кода, создается впечатление, что софт написан не малвар-кодером, а\r\nфрилансером за еду\r\nКак по мне, данный продукт не соответствует цене (30$ в неделю без крипта).\r\nЕдинственное что понравилось - обфускация (было интересно реверсить) и панель.\r\nИсходник\r\nБинарники (onek1lo)\r\nБлог\r\nSource: https://telegra.ph/Borr-Malware-02-04\r\nhttps://telegra.ph/Borr-Malware-02-04\r\nPage 17 of 17",
	"extraction_quality": 1,
	"language": "RU",
	"sources": [
		"Malpedia"
	],
	"references": [
		"https://telegra.ph/Borr-Malware-02-04"
	],
	"report_names": [
		"Borr-Malware-02-04"
	],
	"threat_actors": [],
	"ts_created_at": 1775434612,
	"ts_updated_at": 1775791248,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/fe601ef3fb34f229a7cb591df36384e02136c37e.pdf",
		"text": "https://archive.orkl.eu/fe601ef3fb34f229a7cb591df36384e02136c37e.txt",
		"img": "https://archive.orkl.eu/fe601ef3fb34f229a7cb591df36384e02136c37e.jpg"
	}
}