Вредоносные макросы или уязвимость на ровном месте
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 20.11.10 21:57
Оценка: 2 (1) +1
Качаем солюшн, распаковываем и открываем в студии. Произойдет одно из двух:

1. Вместе с солюшином у вас откроется калькулятор. Поздравляю, только что у вас выполнился произвольный код с теми же правами, с которыми запущена студия.
2. Вылезет ошибка загрузки одной их немерловских сборок. Видимо это потому, что у вас используется не 9342-ой билд, а я поленился и не заточил этот "эксплоит" под запуск с любыми версиями компилятора и библотеки. Но у вас еще есть шанс: просто запустите сборку проекта и получите все тот же калькулятор.

Понятно, что это не ахти какая уязвимость (а второй сценарий, так и вообще by design, без вопросов), но согласитесь, мало приятного в том, чтобы (например) загрузить из багтрекера выложенный кем-то код, якобы воспроизводящий баг, и получить себе на машину трояна, просто открыв этот проект или запустив его сборку. В связи с чем, два вопроса:

1. А зачем студия при открытии солюшена выполняет код используемых в проекте макросов? Ну зачем, в приницпе, понятно. А без этого никак? #Develop'ная интеграция вот, не запускает
2. Я так думаю, что макросам нафиг не нужен полноценный доступ ко всей системе. Не стоит ли научить компилятор размечать макролибы CAS-атрибутами с тем, чтобы ограничить их в правах и не дать натворить делов на машине разработчика в случае чего?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: Вредоносные макросы или уязвимость на ровном месте
От: hi_octane Беларусь  
Дата: 20.11.10 22:51
Оценка: +1
KV>2. Я так думаю, что макросам нафиг не нужен полноценный доступ ко всей системе. Не стоит ли научить компилятор размечать макролибы CAS-атрибутами с тем, чтобы ограничить их в правах и не дать натворить делов на машине разработчика в случае чего?
Всегда можно было скачать с инета проект, в котором пре-билд/пост-билд степом делается хрень. Это не считая того что сам сорец может поднимать фоновый поток и качать с нета гадость, демонстрируя в это время какую-нить интересность. Так что незнакомые проекты смотреть лучше фаром.

Некоторые наши макросы и пишут в файлы на компе и читают файл из сетевой шары при сборке, и это охренительная фича. Так что если и исправлять, то скорее надо как-то делить макро-dll'ки, а то и солюшоны целиком, на доверенные и недоверенные. Но смысл, учитывая те же post-build, которые работают для любых C#/VB/F#/C++ проектов а не только для Nemerle?
Re: Вредоносные макросы или уязвимость на ровном месте
От: мыщъх США http://nezumi-lab.org
Дата: 21.11.10 00:33
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Качаем солюшн, распаковываем и открываем в студии. Произойдет одно из двух:


KV>1. Вместе с солюшином у вас откроется калькулятор. Поздравляю, только что у вас выполнился произвольный код с теми же правами, с которыми запущена студия.


если скачать что-то никсовое и дать make, то там и не такое может выполниться. и у многих компиляторов есть уязвимости когда даже чистому .c файлу через прагму можно задать пути вывода чего-то, перезаписав существующий файл.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[2]: Вредоносные макросы или уязвимость на ровном месте
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 21.11.10 01:16
Оценка:
Здравствуйте, hi_octane, Вы писали:

_>Некоторые наши макросы и пишут в файлы на компе и читают файл из сетевой шары при сборке, и это охренительная фича.


*шепотом* я тебе даже больше скажу. У меня макры в SVN за сигнатурами атак и правилами корелляции ходють (и строят по ним ДКА ), но я всегда считал это жутким хаком, от которого надо избавляться при первой же возможности

_>Так что если и исправлять, то скорее надо как-то делить макро-dll'ки, а то и солюшоны целиком, на доверенные и недоверенные.


Слуууушай, ты мне сейчас такую идею подкинул...
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Вредоносные макросы или уязвимость на ровном месте
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 21.11.10 01:16
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>Качаем солюшн, распаковываем и открываем в студии. Произойдет одно из двух:


KV>>1. Вместе с солюшином у вас откроется калькулятор. Поздравляю, только что у вас выполнился произвольный код с теми же правами, с которыми запущена студия.


М>если скачать что-то никсовое и дать make, то там и не такое может выполниться. и у многих компиляторов есть уязвимости когда даже чистому .c файлу через прагму можно задать пути вывода чего-то, перезаписав существующий файл.


Ну ок, уговорили. Принимаем риск Меня просто напрягло, что для запуска кода достаточно проект в студии открыть, даже не собирая.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[3]: Вредоносные макросы или уязвимость на ровном месте
От: мыщъх США http://nezumi-lab.org
Дата: 21.11.10 01:48
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, мыщъх, Вы писали:


М>>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>>Качаем солюшн, распаковываем и открываем в студии. Произойдет одно из двух:


KV>>>1. Вместе с солюшином у вас откроется калькулятор. Поздравляю, только что у вас выполнился произвольный код с теми же правами, с которыми запущена студия.


М>>если скачать что-то никсовое и дать make, то там и не такое может выполниться. и у многих компиляторов есть уязвимости когда даже чистому .c файлу через прагму можно задать пути вывода чего-то, перезаписав существующий файл.


KV>Ну ок, уговорили. Принимаем риск Меня просто напрягло, что для запуска кода достаточно проект в студии открыть, даже не собирая.

если не ошибаюсь, то слудия даже ms vc 4.0 (с более ранними не работал) позволяет выполнять все что угодно. достаточно открыть dsp в блокноте и слегка его захачить. есть идеи как это можно исправить на уровне концепции постройки проекта? а собирать чужие проекты на девелоперской тачке действительно опасно.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[4]: Вредоносные макросы или уязвимость на ровном месте
От: dZentle_man  
Дата: 21.11.10 02:05
Оценка:
Здравствуйте, мыщъх, Вы писали:


М>а собирать чужие проекты на девелоперской тачке действительно опасно.

Бгг) Я думал что после появления вирусов в mp3-файлах народ уже пуганый)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.