Comments 45
Не все так плохо.
1 — Большая часть используемой информации недоступна в стрипнутом бинарнике
2 — Даже оптимизация (обычный -О3) снижает точность аттрибуции на 20%
3 — Хорошая обфускация не исследована вовсе
4 — Все исследования производились на коде, который явно писал только один программист (а не группа)
5 — Слабая точность не позволяет использовать результаты в суде
Короче говоря, много шума из ничего, обычное современное «давайте засунем в рандом форест че найдем и посмотрим на результаты которые хоть чуть чуть лучше случайных», что и дает, как и любой матметод, результат по принципу garbage in — garbage out.
1 — Большая часть используемой информации недоступна в стрипнутом бинарнике
2 — Даже оптимизация (обычный -О3) снижает точность аттрибуции на 20%
3 — Хорошая обфускация не исследована вовсе
4 — Все исследования производились на коде, который явно писал только один программист (а не группа)
5 — Слабая точность не позволяет использовать результаты в суде
Короче говоря, много шума из ничего, обычное современное «давайте засунем в рандом форест че найдем и посмотрим на результаты которые хоть чуть чуть лучше случайных», что и дает, как и любой матметод, результат по принципу garbage in — garbage out.
+32
Согласен с вами.
И даже по поводу деанонимизации по исходному коду у меня один вопрос:
Любой достаточно большой опен-сорс проект (достаточно — это когда один человек не в состоянии охватить весь проект полностью) имеет стайл-гайд, кучу контрибьюторов и, что более важно, несколько единиц или десятков мейнтейнеров. Можно ли как-то отличить мой код от кода некоего мейнтейнера Томаса, если учесть, что он, как и некий Бернард, был моим ревьювером? И всё это шлифовалось Томасом во время коммита в транк. Причем всё, начиная от именования и до типа применяемого цикла.
И даже по поводу деанонимизации по исходному коду у меня один вопрос:
Любой достаточно большой опен-сорс проект (достаточно — это когда один человек не в состоянии охватить весь проект полностью) имеет стайл-гайд, кучу контрибьюторов и, что более важно, несколько единиц или десятков мейнтейнеров. Можно ли как-то отличить мой код от кода некоего мейнтейнера Томаса, если учесть, что он, как и некий Бернард, был моим ревьювером? И всё это шлифовалось Томасом во время коммита в транк. Причем всё, начиная от именования и до типа применяемого цикла.
+5
— Я не говнокодю, я обфусцируюОпенсорщиков вычислять мало толку, но вот для поимки вирусописателей может пригодиться.
+5
Ога. Как же. Поймаете Вы вирусописателя по бинарю )))
Уверяю Вас, разве что пионера сможете, да и то не факт. А уж опытного малварщика так сказать со стажем тут Вам ничего не светит ;)
Уверяю Вас, разве что пионера сможете, да и то не факт. А уж опытного малварщика так сказать со стажем тут Вам ничего не светит ;)
0
для поимки — вряд ли. а вот отфильтровывать их новые произведения может быть
0
Обычно git blame/hg annotate/svn blame более чем достаточно ,)
-2
Open_source кажется совсем другая история. Source ведь open и доступен, более того в серьезных проектах(да всех на github) сохраняется история issue, request, commit, revue, accept. Так что персональная ответственность за код вполне прозрачна
+2
В целом, если есть возможность с узить круг поиска, то надо ее использовать. Именно для для этого такие методы и исследуют.
Про суд очень слабый аргумент. Если сделаете какую нибудь бяку, то будут желающие вас найти из безо всяких судов.
К тому же, ректальный криптоанализ еще никто не отменял. Вполнее могут появиться улики и для суда.
Про суд очень слабый аргумент. Если сделаете какую нибудь бяку, то будут желающие вас найти из безо всяких судов.
К тому же, ректальный криптоанализ еще никто не отменял. Вполнее могут появиться улики и для суда.
-2
Конечно надо, только у метода столько недостатков, что его практическое использование практически невозможно вообразить, что собственно и имелось в виду.
А искать конечно будут. Только без ордера у них будет на порядок меньше возможностей.
А искать конечно будут. Только без ордера у них будет на порядок меньше возможностей.
+1
Если есть возможность сузить круг, то нужно приложить все усилия к уничтожению этой возможности.
В противном случае нас ждёт международная охота на ведьм, контрибутящих в неудобные политикам опенсорс-проекты.
В противном случае нас ждёт международная охота на ведьм, контрибутящих в неудобные политикам опенсорс-проекты.
0
UFO just landed and posted this here
Теперь мне понятен стиль libstdc++: пишут как пишут, а потом прогоняют через что-то, что делает код таким, будто его писал робот — что бы не догадались, кто что писал :)
0
Забавно, если эта статья (прочитав соседнюю статью про взломы в кино) будет использоваться в будущем киношниками ))
0
> настоящие авторы таких разработок как Bitcoin, TrueCrypt и известных вредоносных программ.
Напомнило: «Можно сказать: „космонавты и педерасты“. Мы не сказали ничего плохого про космонавтов, но неприятный осадок остался». Переформулируйте, пожалуйста.
Напомнило: «Можно сказать: „космонавты и педерасты“. Мы не сказали ничего плохого про космонавтов, но неприятный осадок остался». Переформулируйте, пожалуйста.
+35
У метода есть очевидный недостаток: чтобы он работал, нужна большая база кода у которого авторы изестны и при этом в этой базе кодить все должны отдельно.
+1
github? :)
+1
гитхаб не подходит потому что там далеко не каждый пишет под своим именем как в паспорте. У меня там например штук десять аккаунтов с именами вроде 1h27sh (чуть ли не для каждого проекта свой аккаунт) и логика за этим стоит простая: даже если я такой неуловимый Джо который никому не нужен, не стоит складывать все яйца в одну корзину.
+1
А имейлы для регистрации берете из 10minutemail?
+2
«Если вы параноик, то из этого ещё не следует, что за вами никто не следит!» (с)
+1
Это был не сарказм. Мне действительно интересен способ генерации (почти) одноразовых имейлов, отличный от 10minutemail.
0
Собственный сервер на просторах интернета, на котором взведён sendmail, и правка aliases. Лично у меня так.
0
Хм, все, оказывается, просто. А домен один или несколько?
0
У меня один, но не вижу никаких причин, почему бы не завести несколько (кроме того, что лично мне одного вполне хватает, а дополнительные надо регистрировать и т.п.).
0
Ну вот по домену-то вас и отловят.
0
Ну, во-первых, при регистрации домена паспорт (пока) предьявлять не требуют, поэтому у Васисуалия Пупкина так много доменов; а во-вторых, ilmirus не уточнял, что его интересуют именно неотслеживаемые государством емейлы — я его вопрос понял так, что его интересует защита от спамеров уровня BugMeNot.
-1
в гмейл регистрирую: десять секунд дел
0
для многих акк на гитхабе — это своего рода лицо программиста. его можно указать во всевозможных резюме и профайлах. для такого никто не регит левые акки. а между делом кодер может писать вирусы и ботнет админки, т.к. там очень хорошо платят.
+1
Про это я не забываю и все мои акки выглядят как хеш от моего имени/фамилии + что то (условная «соль»). Если мне когда либо понадобиться показать пару проектов, я дам ссылки и скажу как получено имя аккаунта — для того, кто способен понять что я там накодил это будет очевиным доказательством того, что акк мой, но случайный человек его не найдёт.
0
я не про тебя конкретно говорю в данный момент. а про тенденцию в целом. а она такова, что огромное количество кодеров выкладывает свой код в гитхаб акк и прилепляет этот акк к своему резюме. это первое.
второе — случайным людям не нужно искать. достаточно владельцам гитхаба дать специальным людям просканить все сорцы в репозиториях, а потом по нужным дать данные про почтовый ящик и про айпи, с которого осуществлен был доступ.
второе — случайным людям не нужно искать. достаточно владельцам гитхаба дать специальным людям просканить все сорцы в репозиториях, а потом по нужным дать данные про почтовый ящик и про айпи, с которого осуществлен был доступ.
+1
Не понял про просканить. Вот у нас есть условный тор/и2п/биткоин автора которого очень хочет найти тот у кого длинные руки: он берет код/бинарник и… дальше что? Ищет по этому коду похожий код в гитхабе? Так ведь машинное обучение работает наоброт: ему надо дать 100500 репозиториев одного автора и тогда нейросеть сможет с 60% вероятностью сказать является ли этот человек автором данного куска кода или нет.
0
Даже не так — нужна большая база кода, в которой разные программисты решали одну и ту же задачу, в противном случае их решение работать не будет
Плюс тут еще много тонкостей — в GCJ почти у всех участников есть свои «шаблоны» решений, в которых для ответа на поставленную задачу чаще всего достаточно дописать только одну функцию. Отсюда и такое качество классификации, т.к. шаблоны чаще всего индивидуальны
Плюс тут еще много тонкостей — в GCJ почти у всех участников есть свои «шаблоны» решений, в которых для ответа на поставленную задачу чаще всего достаточно дописать только одну функцию. Отсюда и такое качество классификации, т.к. шаблоны чаще всего индивидуальны
+1
Деанонимизация программиста возможна не только через исходный код, но и через скомпилированный бинарный файлПохоже, нас ждёт новый этап охоты на Сатоши Накамото. Запасаемся попкорном…
0
UFO just landed and posted this here
>> GCJ – соревнование по программированию для алгоритмистов (в подавляющем большинстве случаев это призёры финала ACM ICPC)
Не преувеличивайте, начальные этапы под силу любому практикующему программисту, знакомому с базовыми алгоритмами.
Полуфинал-финал — другое дело, туда действительно попадают в основном только профессиональные спортсмены.
Не преувеличивайте, начальные этапы под силу любому практикующему программисту, знакомому с базовыми алгоритмами.
Полуфинал-финал — другое дело, туда действительно попадают в основном только профессиональные спортсмены.
0
UFO just landed and posted this here
С другой стороны, можно будет легко подделать «почерк», вставив хорошо узнаваемый чужой кусок.
0
Sign up to leave a comment.
Деанонимизация программиста возможна не только через исходный код, но и через скомпилированный бинарный файл