Các nhà phát triển có thể học được gì từ việc nghiên cứu phần mềm độc hại? [đóng cửa]


10

Phần mềm độc hại sử dụng các kỹ thuật thú vị để ẩn mình khỏi phần mềm chống phần mềm độc hại và hơn thế nữa. Họ có thể tự "đa hình": thực tế thay đổi mã trong khi nó tiếp tục có ý nghĩa khá giống với máy thực thi, làm cho các định nghĩa chống vi-rút không hợp lệ, v.v.

Tôi tự hỏi liệu có nhà phát triển nào (không độc hại) có thể học hỏi từ việc nghiên cứu nguồn gốc của nó hay đảo ngược chúng và nghiên cứu bất cứ điều gì bạn nhận được từ quá trình đó nếu nguồn đó không khả dụng, điều đó có thể hữu ích ngoài điều này (tối không?) cảnh giới

Tôi không quan tâm đến việc viết phần mềm độc hại. (ít nhất là không nhằm mục đích phi giáo dục) Câu hỏi này không có nghĩa là một câu hỏi về cách viết phần mềm độc hại hoặc như vậy, nhưng những gì bạn có thể học được từ phần mềm độc hại đã được viết.

Ngoài ra, có thể hơi phi đạo đức (tôi hy vọng là không), liệu có bất kỳ lợi ích nào từ việc viết phần mềm độc hại của riêng bạn hay không, chỉ để hiểu rõ hơn về các lỗ hổng / khai thác / bảo mật hoặc hệ điều hành cơ bản?


11
Không có gì phi đạo đức khi viết phần mềm độc hại nếu bạn không sử dụng nó cho người khác, giống như không có gì phi đạo đức khi học võ thuật hoặc cách bắn súng nếu bạn không sử dụng những kỹ năng như vậy trên những người lạ ngẫu nhiên bạn tìm thấy trong các con hẻm.
Thất vọngWithFormsDesigner

2
@FrustratedWithFormsDesigner Tôi đồng ý rằng không có gì phi đạo đức khi biết cách viết phần mềm độc hại, hoặc tự viết nó như một thử nghiệm suy nghĩ, nhưng một khi bạn thực sự đã viết nó thì có thể là phi đạo đức nếu bạn không bảo mật các thử nghiệm của mình. Rốt cuộc, nếu ai đó kém đạo đức hơn bạn xâm nhập vào hệ thống của bạn, họ sẽ có quyền truy cập vào kho thủ đoạn bẩn thỉu của bạn. Tôi sẽ không đưa ra một tuyên bố đạo đức về việc liệu điều này làm cho bạn có thể biết được bất cứ điều gì xấu mà họ làm với nó, nhưng đó là điều cần xem xét bất kể.
kịch bản

5
@scriptocalypse: Thật vậy. Tương tự như vậy, ai đó có thể đột nhập vào nhà bạn, cướp súng / nỏ / kiếm của bạn và thực hiện một số tội ác khủng khiếp với nó. Nếu bạn sắp có đồ chơi nguy hiểm xung quanh, hãy đảm bảo bạn bảo vệ chúng!
Thất vọngWithFormsDesigner

hmm, bạn có liên kết đến kỹ thuật này không, vì đây là lần đầu tiên tôi nghe về nó. Hầu hết các anlysis đều dựa trên phương pháp Heuristic, tức là bất kể chương trình là gì, các hành động "Kết thúc" cuối cùng là những gì bạn sẽ tìm kiếm, ví dụ như xóa các tệp, gửi thư SMTP, v.v. Tôi đã nghe nói về Stub, RootKit OS hook, nhưng tất cả những thứ này có thể được phát hiện
Darknight

1
@Darknight: Bất cứ điều gì cũng có thể bị phá vỡ. Phần mềm chống vi-rút hoặc phần mềm độc hại. Xem en.wikipedia.org/wiki/Polymorphic_code#Malicy_code để biết điều đa hình.
Anto

Câu trả lời:


7

Chắc chắn rồi.

Tất nhiên, một hiệu ứng ngu ngốc của DMCA là bởi vì bạn phải đảo ngược phần mềm độc hại, bạn không thể chia sẻ một cách hợp pháp những gì bạn đã học.

Những điều quan trọng nhất bạn học được là:

  • Những lỗi phần mềm độc hại khai thác, vì vậy bạn sẽ biết những gì bạn nên bảo vệ chống lại.
  • Bạn nên thực sự tin tưởng bao nhiêu vào một hệ điều hành / ứng dụng / API cụ thể
  • API không có giấy tờ

Và tất nhiên, tất cả phụ thuộc vào những gì bạn đã biết. Nếu bạn chưa bao giờ sửa đổi trực tiếp với ngăn xếp, thì tôi hy vọng điều này sẽ xuất hiện


Nếu tôi ở Phần Lan, tôi không thuộc DMCA, phải không? Mặc dù có thể có một số luật tương đương ở đây.
Anto

Tôi sử dụng DMCA như một thuật ngữ mền, vì hầu hết các bên ký kết WIPO đều có luật tương đương mơ hồ. IANAL
Phil Lello

Theo DCMA, chính phủ hoặc tác giả của phần mềm độc hại có hành động chống lại bạn không?
Andrew Grimm

Một lần nữa IANAL, nhưng nói chung các biến thể DMCA biến nó thành một tội hình sự, vì vậy về mặt kỹ thuật, đó là cảnh sát. Tất nhiên, cơ hội để nó ra tòa là từ xa - theo cách tương tự như nếu A ăn cắp từ B những gì B lấy trộm từ C, B không có khả năng báo cáo hành vi trộm cắp. Nhưng góc DMCA hơi lạc đề.
Phil Lello

7

Tấn công và phòng thủ là hai mặt của cùng một đồng tiền - Tôi nghĩ rằng việc nghiên cứu phần mềm độc hại sẽ hữu ích cho bất kỳ ai cố gắng chống lại sự tấn công.


4

Viết một thành phần cấp phép không quá xa với các nghiên cứu như vậy. Nỗ lực mà người viết phần mềm độc hại phải làm, để trốn tránh phân tích và dịch ngược là nỗ lực tương tự mà một thành phần cấp phép cần thực hiện để trốn tránh cướp biển và phá vỡ các vòng. Mặc dù đại đa số người dùng phần mềm là trung thực (và sẽ trả tiền cho phần mềm của họ), có rất nhiều người khác nghĩ rằng không sử dụng phần mềm của bạn mà không thanh toán. Cũng có một số người nhận thức được giá trị của chính họ dựa trên số lượng "vết nứt" mà họ tạo ra - cho dù họ có sử dụng phần mềm của bạn hay không. Tính khả dụng của các vết nứt và bộ tạo chìa khóa như vậy có thể cám dỗ những người thường thành thật.


1

IMO hầu hết các lập trình viên không cần sự giúp đỡ / khuyến khích để đưa ra "các kỹ thuật mới và thú vị". Vâng, có rất nhiều thứ bạn có thể học, nhưng nó sẽ không có giá trị như, ví dụ, kiến ​​thức về lĩnh vực kinh doanh bạn đang làm việc ... trừ khi bạn làm việc về bảo mật, tất nhiên.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.