Windows: Mới, được cải tiến và an ninh hơn bao giờ hết

Thứ năm - 18/03/2010 05:57

Windows:New, improved & more insecure than ever

Bảovệ thực thi dữ liệu, một tính năng an ninh chủ yếucủa Windows, đã vừa bị phá.

Dataexecution prevention, a major Windows security feature, has just beenbusted.

March 4, 2010, 02:02 PM— 

Theo:http://www.itworld.com/endpoint-security/98992/windows-new-improved-more-insecure-ever

Bài được đưa lênInternet ngày: 04/03/2010

Lờingười dịch: Một kỹ sư của Google lại vừa phá đượccông nghệ bảo vệ thực thi dữ liệu DEP của MicrosoftWindows. Và với việc này, anh ta nói: “Ngắn gọn, nếubạn chạy Windows 32 bit hoặc bất kỳ dạng nào như XP,Vista, 7, Server 2008 - thì bạn có thể hướng tới ngay cảviệc còn có thể bị tổn thương nhiều hơn đối vớicác cuộc tấn công. Liệu tôi đã nhắc sau này rằng tôicó xu hướng sẽ làm việc hầu hết trên các máy tínhLinux của tôi chưa nhỉ? Vâng, tôi thế đấy. Khai thácnày mở ra một lỗ hổng mới và khổng lồ trong sựphòng vệ đã là dễ bị tổn thương của Windows”. Cólẽ, sẽ không bao giờ có thể dừng việc nói về các lỗhổng an ninh của Windows được, trừ phi tất cả mọingười vứt nó đi để sử dụng những thứ khác. Đãtới lúc, tất cả các phương tiện thông tin đại chúngphải nói về vấn đề này, để tránh cho tất cả mọingười không phải “ăn đòn” về những thứ như thếnày.

Thành thật với Trờilà tôi không loanh quanh thử nhặt Windows vì những vấn đềan ninh của nó, mà những tin tặc tiếp tục tìm thấynhững cách thức mới để đột nhập vào nó. Và, lầnnày, họ đã thấy một cánh cửa con. Berend - Jan Wever, tênhiệu là “Đường chân trời”, một kỹ sư an ninh củaGoogle đã phá vỡ DEP (bảo vệ thực thi dữ liệu), mộttrong ít những cải tiến an ninh đáng kể mà Microsoft đãlàm cho Windows.

DEP, mà đã được bổsung cho Windows vào tháng 08/2004 vào XP SP2. Nó đã giảiquyết kỹ thuật thâm nhập rất phổ biến của việctràn bộ nhớ tạm. Trong một cuộc tấn công làm tràn bộnhớ tạm, một chương trình độc hại cố gắng viết đèlên bộ nhớ tạm đó, một số lượng bộ nhớ mà mộtchương trình đã được phân bổ cho việc chạy mã nguồncủa nó trong đó. Bằng cách làm như vậy, một sự trànbộ nhớ sẽ ghi đè lên bộ nhớ mà có thể có hoặckhông được phân bổ cho các chương trình khác. Trong cả2 trường hợp, nó có thể sau đó sử dụng bộ nhớ bịghi đè này cho những mục đích riêng của mình. Thườngthì điều này có nghĩa là chạy phần mềm độc hạihoặc ngay cả tiếp quản luôn bản thân máy tính.

Trong khi vấn đề nàykhông phải là duy nhất đối với Windows, thì có thể xảyra cho hầu hết các hệ điều hành mà không có sự kiểmsoát quản lý bộ nhớ một cách ngặt ngèo, ngay cả vớiDEP, Windows đã từng bị nằm sóng soài đối với cáccuộc tấn công như vậy. Bây giờ, dù, với DEP bị phávỡ, sẽ trở nên dễ dàng hơn cho một cuộc tấn công bộnhớ tạm để đánh vào các nhà.

DEP làm việc, hoặctôi đoán tôi nên nói 'đã làm việc' bây giờ, bằng việclàm việc với CPU để đánh dấu tất cả các vị trí bộnhớ trong một quá trình như là không thực thi trừ phi nócó chứa chắc chắn mã nguồn thực thi. Bằng cách đó,ngay cả nếu đã có một sự tràn bộ nhớ tạm, thì mãnguồn độc hại cũng không thể chạy trong bất kỳ bộnhớ nào mà nó ngẫu nhiên tìm thấy cho bản thân mình.

Honestto God I don't go around trying to pick on Windows for its securityproblems, but the hackers keep finding new ways to break into it.And, this time, they've found a doozie. Berend-Jan Wever, aka"Skylined," a Google security software engineer has bustedDEP (data execution prevention), one of the few significantsecurity improvements Microsoft has made to Windows.

DEP,which was added to Windows back in August 2004 in XP SP2. Itaddressed the very common hacking technique of bufferoverflows. In a buffer overflow attack, a malicious program triesto overwrite the buffer, the amount of memory a program has beenallocated for running its code in. By so doing, a buffer overflowoverwrites memory that may or may not have been allocated to otherprograms. In either case, it can then use this overwritten memory forits own purposes. Usually this means running malware or even takingover the computer itself.

Whilethis problem isn't unique to Windows, it can happen to almost anyoperating system without strict memory management controls, even withDEP, Windows has been prone to such attacks. Now, though, with DEPbusted, it's become even easier for a buffer attack to strike home.

DEPworks, or I guess I should say 'worked' now, by working with the CPUto mark all memory locations in a process as non-executable unless itexplicitly contained executable code. That way, even if there was abuffer overflow, the malicious code couldn't run in whatever memoryit happened to find itself.

Đáng tiếc, Wever, sửdụng một loại các kỹ thuật tấn công mà anh ta phá vỡđược DEP bằng cái gọi là việc phun đống. Trong việcphun đống, mã nguồn tấn công đã làm một ước đoánđược giáo dục ở nơi mà bộ nhớ bị tổn thương màcó thể được sử dụng để chạy các chương trìnhkhông được chấp nhận có thể tìm thấy. Trong mẹo mớinhất của Wever, mã nguồn tấn công tìm dấu vết ở nơitìm thấy bộ nhớ mà nó đã được cho phép bởi DEP đểchạy các chương trình. Một khi được trang bị vớinhững thông tin này, thì mã nguồn tấn công có thể sauđó cấy bản thân mình một cách thành công vào hệthống.

Trong khi mã nguồn tấncông không sẵn sàng đi với bất kỳ script nào, như Weverchỉ ra cho bản thân mình, thì anh ta đã đưa ra đủ thôngtin về cách mà thắng được DEP mà đây chỉ là vấn đềcủa thời gian trước khi một kẻ đột nhật có năng lựcsử dụng mã nguồn để bắt đầu cho phép các cuộc tấncông mới.

Trong khi Wever khôngnói rằng kỹ thuật này có thể được sử dụng đểđánh bại một cải tiến về an ninh đáng kể khác củaMicrosoft trong những năm gần đây, là ASLR (sự ngẫu nhiênvề thể hiện không gian địa chỉ). Nhưng, dường nhưkhá rõ rằng đối với tôi rằng dạng tấn công này cóthể được cải tiến và sau đó được sử dụng đểlàm chính xác điều đó. ASLR, mà được sử dụng trongcác hệ điều hành như Linux và từng trong Windows kể từbản SP2, làm việc bằng việc ngẫu nhiên nơi mã chươngtrình thực thi chạy được trong bộ nhớ. Cách này mộttin tặc không thể thực hiện một cuộc tấn công bằngviệc giả thiết đơn giản rằng bất kỳ chương trìnhnào được đưa ra cũng sẽ sống trong một mảnh cụ thểnào đó của bộ nhớ.

Wever đã viết, “Tôiđưa ra điều này vì tôi cảm thấy nó giúp giải thíchvì sao ASLR + DEP là không làm dịu để đặt nhiều sựtin cậy vào được, đặc biệt trong các nền tảng x86.32 bit không cung cấp đủ không gian địa chỉ để ngẫunhiên hóa bộ nhớ tới điểm nơi mà những địa chỉgợi ý trở nên không thực tế, coi việc phun đống cóthể cho phép một kẻ tấn công phân bổ bộ nhớ khắpmột vùng không gian bộ nhớ và trong một vị trí có thểđoán trước được cao độ”.

Ngắngọn, nếu bạn chạy Windows 32 bit hoặc bất kỳ dạng nàonhư XP, Vista, 7, Server 2008 - thì bạn có thể hướng tớingay cả việc còn có thể bị tổn thương nhiều hơn đốivới các cuộc tấn công. Liệu tôi đã nhắc sau này rằngtôi có xu hướng sẽ làm việc hầu hết trên các máytính Linux của tôi chưa nhỉ? Vâng, tôi thế đấy. Khaithác này mở ra một lỗ hổng mới và khổng lồ trong sựphòng vệ đã là dễ bị tổn thương của Windows.

Unfortunately,Wever, using a variation of a hacking technique he helped perfectcalled heap-sprayinghas busted DEP. In heap-spraying, the attack code made an educatedguess at whe-re vulnerable memory that could be used to executeunapproved programs could be found. In Wever'slatest trick, the attacking code looks for clues on whe-re to findmemory that's allowed by DEP to run programs. Once armed with thisinformation, the attack code can then successfully plant itself inthe system.

Whilethe attack code isn't ready to go for any script-kiddie, as Weverhimself points out, he has given enough information on how to defeatDEP that it's only a matter of time before a competent cracker usesthe code to start enabling new attacks.

WhileWever doesn't say that this technique can be used to defeatMicrosoft's other significant security improvement in recent years,ASLR(address space layout randomization). But, it seems pretty clearto me that this kind of attack could be improved upon and then usedto do exactly that. ASLR, which is used in other operating systemssuch as Linux and has been in Windows since SP2, works by randomizingwhe-re program's executable code is ran in memory. This way a hackercan't make an attack by simply assuming that any given program willlive in a particular chunk of memory.

Weverwrote, "I am releasing this because I feel it helps explain whyASLR+DEP are not a mitigation to put a lot of faith in, especially onx86 platforms. 32-bits does not provide sufficient address space torandomize memory to the point whe-re guessing addresses becomesimpractical, considering heap spraying can allow an attacker toallocate memory across a considerable chunk of the address space andin a highly predictable location. "

Inshort, if you're running 32-bit Windows of any sort-XP, Vista, 7,Server 2008-you can look 'forward' to being even more vulnerable toattacks. Have I mentioned lately that I tend to do most of my desktopcomputing with Linux? Well, I am. This exploit opens up a new andhuge hole in Windows' already vulnerable defenses.

Dịch tài liệu: LêTrung Nghĩa

letrungnghia.foss@gmail.com


Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết

  Ý kiến bạn đọc

Những tin mới hơn

Những tin cũ hơn

Về Blog này

Blog này được chuyển đổi từ http://blog.yahoo.com/letrungnghia trên Yahoo Blog sang sử dụng NukeViet sau khi Yahoo Blog đóng cửa tại Việt Nam ngày 17/01/2013.Kể từ ngày 07/02/2013, thông tin trên Blog được cập nhật tiếp tục trở lại với sự hỗ trợ kỹ thuật và đặt chỗ hosting của nhóm phát triển...

Bài đọc nhiều nhất trong năm
Thăm dò ý kiến

Bạn quan tâm gì nhất ở mã nguồn mở?

Thống kê truy cập
  • Đang truy cập58
  • Hôm nay619
  • Tháng hiện tại598,106
  • Tổng lượt truy cập37,399,680
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây