All streams
Search
Write a publication
Pull to refresh
43
0
Березников Алексей @gdt

Разработчик C#

Send message
Окей, в данном конкретном случае я и правда погорячился насчёт «щелчка пальцев», виртуализация и правда очень хорошо защищает код от реверсинга (можно вспомнить хотя бы VMProtect). Но мне такое не встречалось в боевом софте (я про .Net), буду очень признателен, если дадите ссылку на что-то подобное, чтобы поковырять своими руками. А чтобы сломать рефлексию зачастую достаточно банального переименования типов, не то что виртуальной машины :)
Заметьте, я ничего не говорил про запуск. Далеко не всегда для анализа нужно запускать исполнимый файл, тем более вы специально выбрали crackme. Возьмите лучше рабочий софт, с рефлексией, WCF, COM interop, упакуйте его так, чтобы он продолжал работать, тогда и поговорим ;)
Ваш Eazfuscator.Net точно так же распаковывается одним щелчком пальцев. Если хотите что-то, что не снимается за 5 минут — посмотрите в сторону ConfuserEx (https://github.com/XenocodeRCE/neo-ConfuserEx). Его применение требует определённых усилий, зато в наших тестах он оказался самым устойчивым к распаковке.
На самом деле большинство популярных обфускаторов для .Net (особенно dotnet reactor, который я вижу в каждой первой софтине) снимает не напрягаясь замечательная утилита под названием de4dot. Она консольная, но если использовать для декомпиляции Telerik JustDecompile — можно в пару кликов установить плагин de4dot и делать всё полностью через ui.
Окей, да я и не настаиваю, у каждого есть право выбора. Вы не доверяете, но некоторые крупные компании (у AnchorFree есть и B2B, наверное не могу привести названий — но среди них есть и антивирусные компании, которые вроде как проводили аудит) вполне себе доверяют.
А описанным недостаткам по ссылке (если они вообще когда-то были) сто лет в обед, во всяком случае за то время, которое участвую в работе над этим проектом, ничего подобного не замечал. Вы сами-то даже не проверяли эти утвержения, так ведь? Я вас уверяю, на текущий момент этот список не соответствует действительности, и думаю, что это скорее происки конкурентов, как с проплаченными обзорами (ничего не могу сказать только за privacy policy, т. к. не являюсь юристом, но статья ссылается на устаревшую заархивированную версию 2010 года).
Хорошая статья. Я один из разработчиков Hotspot Shield (для Windows), и тоже, честно говоря, крайне удивлён таким положением вещей. В статье об этом ни слова, но на самом деле подавляющее большинство современных VPN приложений являются просто красивыми обёртками над всем известным OpenVPN. Да за ними стоит серьёзная инфраструктура в виде множества VPN серверов (т.н. «нод»), присутствуют приятные (в некоторых странах жизненно необходимые) плюшки по типу Kill Switch, премиум поддержка, но OpenVPN есть OpenVPN — со своими особенностями и ограничениями.
Опять же, в статье нет ни слова о том, из-за чего на самом деле Hotspot Shield побеждает конкурентов по скорости — а это происходит вследствие использования своего (да, закрытого и проприетарного, но на то есть свои причины) протокола VPN, который позволяет значительно сократить время установления VPN подключения, добиться действительно высоких скоростей (в основном вы ограничены скоростью вашего линка), маскироваться под легитимный трафик и поддерживать одновременно несколько соединений к разным ендпоинтам (т. е. даже если несколько из них будут заблокированы — вы, скорее всего, ничего не заметите).
В C# представьте себе все ref объекты сравниваются в первую очередь по ссылкам, а ещё есть такое понятие как интернирование строк.
Код к сожалению не идеален, но для начала вполне неплохо. Я бы порекомендовал вам написать простенький транслятор с C-подобного псевдоязыка в байт-код вашей машины (это далеко не так сложно, как кажется, смотрите рекурсивный спуск, и раз уж вы пишете на C — вам могут помочь такие утилиты как lex и yacc, например). Когда у вас будет больше одного типа данных, поддержка строк и рекурсии — вы сами поймёте, что не так с вашим кодом, и как его можно улучшить, это нормально. Продолжайте в том же духе!
Это не миф, в даркнете вполне реально пробивают по вышкам.
А чем вас рекурсивный спуск не устроил? Просто и элегантно, если не разбирать гигантские выражения — то и с памятью тоже будет всё в порядке.
Какое-то однобокое изучение получилось, точно знаю что есть и американские популярные VPN, взять хотя бы Hotspot Shield — но они почему-то оказались обделены вниманием.
Рискну предположить, что обучение модели может занимать какое-то время.
Абсолютно и полностью с вами соглашусь, как-то пришлось разобраться с VAX, чтобы помочь сыну маминой подруги с лабами, не ожидал, что ассемблер может быть настолько удобным и многофункциональным.
Попробуйте C#, удобнее и Object Pascal и C/C++ в разы. Сам начинал свой путь с pascal, поэтому знаю, о чём говорю.
Никогда не используйте вложенные конструкции switch/case. Это неудобно читать и неудобно сопровождать, и со временем такой код имеет тенденцию превращаться в нечто монструозное.
Чукча не читатель, чукча писатель :)
>> Почему вы никогда не перепутаете красоту раскачивающейся на ветру сосны со вкусом сыра фета? Или ощущение наждачной бумаги на кончиках пальцев с запахом свежего эспрессо?

Под действием ЛСД, псилоцибина и других психоделиков вполне можно услышать свет, увидеть звук и так далее.
Точно, речь же идёт про веб-приложения, а я тут со своими десктопными понятиями :)
Честно говоря, речь шла в основном про дебетовые карты, копия паспорта+симка нужна для восстановления доступа и подтверждения операций (привет, сбербанк). Не пойму, откуда вообще могла возникнуть идея делать обнал левых денег лично по чужому паспорту — это полнейший бред.
Вы слышали что-нибудь про банкоматы?

Information

Rating
Does not participate
Location
Кемерово, Кемеровская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer
Senior
C#
.NET
Software development
Object-oriented design
Multiple thread
Git
WPF