Чи могли б розробники навчитися чомусь, вивчаючи зловмисне програмне забезпечення? [зачинено]


10

Зловмисне програмне забезпечення використовує цікаві прийоми для приховування від програмного забезпечення проти шкідливих програм тощо. Вони можуть «поліморфувати» себе: практично змінювати код, продовжуючи означати майже те саме для виконавчої машини, що робить антивірусні визначення недійсними тощо.

Цікаво, чи є щось (не шкідливі) розробники могли б навчитися вивчати джерело таких, або перевертати їх і вивчити все, що ви отримаєте від цього процесу, якщо джерело недоступне, що може бути корисним поза цим (темно?) царство.

Мені не цікаво писати шкідливі програми. (принаймні, не для неучбових цілей) Це питання не означає питання про те, як написати шкідливе програмне забезпечення чи таке, а про що ви могли б дізнатися з уже написаних шкідливих програм.

Також, можливо, трохи неетично (я сподіваюся, що ні), чи не буде користі від написання власної шкідливої ​​програми, просто для кращого розуміння вразливих місць / подвигів / безпеки чи базової операційної системи?


11
Немає нічого неетичного в написанні шкідливого програмного забезпечення, якщо ви не використовуєте його на інших, як і немає нічого неетичного в навчанні бойових мистецтв або як стріляти з пістолета, якщо ви не ходите користуватися такими навичками на випадкових незнайомців, яких ви знайдете в алеях.
FrustratedWithFormsDesigner

2
@FrustratedWithFormsDesigner Я погоджуюся, що нічого неетичного в тому, як знати шкідливе програмне забезпечення або писати його як мислительний експеримент, немає, але що після того, як ви насправді це написали, це може бути неетично, якщо ви не забезпечите належним чином свої експерименти. Зрештою, якщо хтось менш етичний, ніж ви, ввірветься у вашу систему, вони отримають доступ до вашої брудної хитрості. Я не збираюся виголошувати моральну заяву про те, чи це робить вас винним за все погане, що вони роблять з цим, але це щось, що варто враховувати незалежно.
scriptocalypse

5
@scriptocalypse: Дійсно. Точно так само хтось міг увірватися у ваш будинок, викрасти ваш пістолет / арбалет / меч і піти на нього з цим жахливим злочином. Якщо у вас будуть небезпечні іграшки навколо, переконайтесь, що ви закріпіть їх!
FrustratedWithFormsDesigner

Хм, у вас є посилання на цю техніку, оскільки це перший, що я чув про неї. Більшість аналізів ґрунтується на евристичному підході, тобто незалежно від того, що робить програма, остаточні дії "Кінець" - це те, на що ви б звернули увагу, наприклад, видалення файлів, відправлення пошти SMTP тощо. Я чув про Stubs, RootKit гачки ОС, але все це можна виявити.
Темна ніч

1
@Darknight: Все, що можна зламати. Антивірус або зловмисне програмне забезпечення. Дивіться en.wikipedia.org/wiki/Polymorphic_code#Malicious_code для поліморфічної речі.
Анто

Відповіді:


7

Абсолютно.

Звичайно, дурний сиф-ефект DMCA полягає в тому, що, оскільки вам доведеться переробляти шкідливі програми, ви не могли юридично поділитися тим, що ви дізналися.

Найважливіші речі, яких ви дізнаєтесь, це:

  • Які помилки використовує зловмисне програмне забезпечення, щоб ви знали, від чого слід захищати.
  • Скільки довіри ви дійсно повинні довірити певній ОС / додатку / API
  • Недокументовані API

І звичайно, все залежить від того, що ви вже знаєте. Якщо ви ніколи не спілкувалися безпосередньо зі стеком, я б очікував, що це з'явиться


Якщо я перебуваю у Фінляндії, я не під DMCA, правда? Хоча тут може бути якийсь рівноцінний закон.
Анто

Я використовую DMCA як простий термін, оскільки більшість підписантів ВОІВ мають нечітко еквівалентне законодавство. IANAL
Phil Lello

Відповідно до DCMA, чи проти вас влада чи автор зловмисного програмного забезпечення вживають проти вас дії?
Ендрю Грімм

Знову IANAL, але загалом варіанти DMCA роблять це кримінальним злочином, тому технічно це поліція. Звичайно, шанс звернення до суду є віддаленим - приблизно так само, як якщо A вкраде у B, що B вкрав у C, B навряд чи повідомить про крадіжку. Але кут DMCA - трохи поза темою.
Філ Лелло

7

Напад і захист - це дві сторони однієї і тієї ж монети - я думаю, що вивчення шкідливих програм було б корисно для тих, хто намагається захиститись від нападу.


4

Написання компонента ліцензування не надто далеко від таких досліджень. Зусилля, які повинні докласти письменники зловмисного програмного забезпечення, щоб уникнути аналізу та декомпіляції - це те саме зусилля, яке потрібно виконати ліцензійному компоненту, щоб уникнути піратів та розтріскування кілець. Незважаючи на те, що переважна більшість користувачів програмного забезпечення є чесними (і будуть платити за своє програмне забезпечення), є багато інших, які нічого не думають використовувати ваше програмне забезпечення без оплати. Є також деякі люди, які сприймають власну цінність залежно від того, скільки "тріщин" вони роблять - незалежно від того, користуються вони вашим програмним забезпеченням чи ні. Наявність таких тріщин і ключових генераторів може спокусити людей, які зазвичай були б чесними.


1

Більшість програмістів IMO не потребують допомоги / заохочення, щоб придумати "нові та цікаві методи". Так, ви можете багато чому навчитися, але це не було б таким цінним, як, наприклад, знання ділової галузі, в якій ви працюєте ... якщо ви, звичайно, не працюєте над безпекою.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.