Archive

Archive for June, 2008

Hacking Techniques for Attacks (Part 2)

June 30, 2008 Leave a comment

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần 2 :  Xì trum tấn công (Smurf Attacks)

Một biến thể của tấn công DoS gây tràn ngập là tấn công kiểu Smurf (*). Bạn hãy tưởng tượng một công ty nọ có năm mươi nhân viên chuyên giải đáp thắc mắc của khách hàng bằng email. Mỗi nhân viên này dùng một chương trình trả lời tự động không giới hạn, chương trình này sẽ tự động gửi các mail trả lời lịch sự khi nhận được câu hỏi. Điều gì sẽ xảy ra, nếu có một khách hàng vì bực bội đã gửi một trăm bản email copy cho mỗi người trong số năm mươi nhân viên nói trên, với địa chỉ email trả về (return address) giả mạo? Lúc đó một trăm email đến sẽ làm phát sinh… năm ngàn email đi, mà lại đi tới chỉ… một mailbox duy nhất. Vô phúc cho ai sở hữu địa chỉ bị ông khách hàng quý hóa kia lấy làm địa chỉ giả mạo, mailbox của anh ta sẽ tràn ngập những mail là mail! Điều đau khổ của khổ chủ là phải ngồi duyệt hết đống xà bần đó, để bảo đảm là không bỏ sót một email quan trọng nào do xếp hoặc bạn bè mình gửi đến, hix hix. Tấn công kiểu Smurf cũng tương tự như ví dụ vừa nêu. Kẻ tấn công sẽ gửi một tín hiệu yêu cầu đến một mạng nhiều máy tính, và tất nhiên là mỗi máy tính trong mạng đều sẽ trả lời cho một địa chỉ giả mạo. Các chương trình đặc biệt kết hợp một số kỹ thuật khác sẽ khuếch đại chuyện này cho đến khi một cơn lũ thông tin ập đổ xuống đầu một máy tính tội nghiệp.

Smurf

Ảnh 3: Các tấn công DoS có thể phá hủy ảo cả một hệ thống máy tính.

Như bạn đã biết, một máy tính sẽ bỏ qua tất cả các gói tin không có địa chỉ rõ ràng chính xác. Có một ngoại lệ cho chuyện này nếu máy tính dùng loại card mạng chạy ở mode ngẫu nhiên (promiscuous). Tuy nhiên, có một ngoại lệ khác nữa mà chúng ta vẫn chưa bàn tới.

Công ty của bạn sẽ làm gì nếu muốn chuyển một thông báo quan trọng tới tất cả mọi người trong công ty? Nếu email là một trong các khả năng, công ty sẽ gửi một spam mail nội bộ tới mọi thành viên có địa chỉ email. Mặt khác, công ty có thể thông báo trên hệ thống loa. Hoặc họ có thể đặt một bảng thông báo gần máy bán cà phê tự động. Tất cả những kỹ thuật vừa nêu chỉ nhằm đảm bảo cho hầu hết nhân viên đều có thể nhận được thông tin. Cũng tương tự như vậy trong một mạng máy tính, có rất nhiều lúc server cần gửi thông tin đến từng máy tính thành viên trong mạng. Điều này được hoàn tất bằng cách sử dụng địa chỉ broadcast.

Do cách xây dựng địa chỉ IP bên trong một mạng, luôn luôn có một địa chỉ mà mỗi máy tính đều sẽ trả lời. Địa chỉ này được gọi là địa chỉ broadcast và thường được dùng để cập nhật các danh sách tên và những mục cần thiết khác mà các máy tính đều cần để giữ cho mạng tồn tại và hoạt động được. Mặc dù địa chỉ broadcast là cần thiết trong một số trường hợp, nhưng nó cũng có thể đưa tới cái gọi là cơn bão broadcast.

Một cơn bão broadcast cũng tương tự như một tiếng vọng không bao giờ mất. Còn đặc biệt hơn nữa, nó giống như một tiếng vọng nhưng lại mạnh dần lên cho đến khi bạn không còn có thể nghe thấy gì nữa vì quá ồn. Nếu một máy tính gửi đi một yêu cầu đến hệ thống mạng nhưng lại dùng địa chỉ broadcast và địa chỉ trả về cũng là địa chỉ broadcast thì từng máy tính trong mạng sẽ đáp ứng đến từng lời đáp ứng của máy tính khác; chuyện này tiếp tục diễn ra theo hiệu ứng quả cầu tuyết (**) cho đến khi toàn mạng đầy những gói tin echo khiến cho chẳng còn gì có thể gửi qua được nữa.

Bây giờ bạn đã hiểu cách thức làm việc của broadcast, hãy tưởng tượng cái gì xảy ra nếu một hacker gửi một ngàn gói tin broadcast đến mạng của chúng ta và hắn lại dùng địa chỉ IP trả về giả mạo (Spoofed Return IP Address). Mạng chắc chắn sẽ khuếch đại các gói tin ban đầu lên thành mười ngàn hoặc trăm ngàn gói tin và tống tất tần tật đến một máy tính vô tội bị giả địa chỉ.

Trong trường hợp này, không giống như kiểu tấn công SYN, máy tính mục tiêu vẫn có thể xây dựng một chầu kết nối với máy tính phát yêu cầu. Tuy nhiên, sự tăng quá mức của các yêu cầu kết nối sẽ làm cho server ngập đầu ngập cổ, và như thế là server trở nên vô dụng.

Những kiểu tấn công này không chỉ quất sụm server một cách nhanh chóng và hiệu quả, mà còn giữ cho hacker trở nên vô hình. Với bản chất của cuộc tấn công như vậy, sẽ không thể lần ra được gói tin nguyên thủy do hacker gửi. Trong trường hợp tấn công bằng SYN, địa chỉ phải là địa chỉ bịp. Như thế, điểm xuất phát nguyên thủy của gói tin cũng coi như không thể biết được. Trong trường hợp tấn công kiểu smurf, hacker sẽ không trực tiếp tấn công mục tiêu, mà thay vào đó là dùng hiệu ứng phụ của việc gửi tín hiệu broadcast đến mạng để thực hiện âm mưu một cách gián tiếp. Như thế cuộc tấn công xuất hiện như đến từ hệ thống mạng khác hoặc máy tính khác.

———-

(*) Smurf là tên software lần đầu tiên áp dụng thành công kỹ thuật gây tràn ngập bằng các gói tin broadcast và ping. Tên này lấy theo các nhân vật truyện tranh của họa sĩ người Bỉ Peyo, bản dịch ở Việt Nam gọi là xì trum, gồm 101 chú nhóc bé tí da màu xanh. Bạn có thể xem chi tiết tại:

http://en.wikipedia.org/wiki/Smurf

http://en.wikipedia.org/wiki/Smurf_attack

http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci213012,00.html

(**) Chắc bạn không lạ gì hiệu ứng này, khi lăn theo sườn dốc phủ đầy tuyết thì đầu tiên chỉ là một nắm tuyết, nhưng đến chân dốc lại là một quả cầu tuyết khổng lồ.

Categories: HACKING - SECURITY

Hacking Techniques for Attacks (Part 1)

June 29, 2008 Leave a comment

Hacking Techniques for Attacks (Những kỹ thuật hacker thường dùng với mục đích tấn công)

Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn mã có hại (malicious code). Kỹ thuật này được gọi là tấn công từ chối dịch vụ (DoS – Denial of Service).

Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong hai phương pháp, cả hai phương pháp này đều khả thi. Phương pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous data) có thể làm sụm máy tính mục tiêu.

Một vài kỹ thuật hacker thường dùng với mục đích tấn công mà tôi giới thiệu trong bài viết này :

– Làm tràn ngập bằng SYN (SYN Flooding)

– Xì trum tấn công (Smurf Attacks)

– Làm quá tải hệ thống (System Overloads)

– Lừa đảo DNS (DNS Spoofing)

 

Phần I : Làm tràn ngập bằng SYN (SYN Flooding)

Kiểu tấn công DoS thứ nhất là làm tràn ngập bằng tín hiệu SYN. Một vụ tấn công SYN sẽ bắt buộc các tài nguyên của máy tính mục tiêu ngừng hoạt động, bằng cách ép chúng phải đáp ứng một cơn lũ các lệnh. Để có thể hiểu được điều này, hãy tưởng tượng bạn đang làm thư ký trong một công ty, nhiệm vụ của bạn là trả lời và chuyển các cuộc gọi điện thoại. Cái gì sẽ xảy ra nếu cùng lúc có hai trăm người gọi đến và đều cúp máy khi bạn bắt máy trả lời? Bạn sẽ rất bận rộn để bắt cho hết các cuộc điện thoại tào lao này (làm sao dám bỏ một cuộc gọi nào), và chắc chắn bạn sẽ không thể làm xong bất kỳ công việc nào khác. Cuối cùng bạn sẽ khóc rưng rức, sẽ khùng luôn và chắc chắn phải “say goodbye” với cái ghế thư ký khốn khổ đó. Hacker sẽ dùng một kỹ thuật giống như vậy khi họ triển khai một vụ tấn công DoS.

SYN_Flooding

Ảnh 1 : Ví dụ minh họa tấn công từ chối dịch vụ (DoS) bằng điện thoại.

Để tiến hành một vụ tấn công DoS, đầu tiên hacker phải xác định được địa chỉ IP của mục tiêu. Sau đó, hacker sẽ dùng địa chỉ IP này để kết nối vào mục tiêu bằng một máy tính client. Để khuếch đại uy lực của cuộc tấn công, hacker sẽ thường setup rất nhiều máy tính client cùng lúc tấn công mục tiêu. Để làm được việc này, thường thì trước đó hacker đã phải thực hiện vài cú hack mở màn để lấy được quyền điều khiển trên một loạt máy tính có băng thông kết nối rộng. Nguồn phổ biến nhất để cung cấp những máy tính “nô lệ” này chính là hệ thống mạng máy tính của các trường đại học hoặc là hacker sẽ dùng những credit card “chùa” để thuê các server và dùng nó làm công cụ phục vụ ý đồ của mình. Khi hacker setup xong các máy tính nô lệ của mình, anh ta sẽ ngồi ở trung tâm điều khiển bà bắt đầu phát động cuộc tấn công.

Quy trình kết nối liên lạc của máy tính gồm 3 bước bắt tay. Một cú tấn công theo kiểu SYN sẽ cải biên quá trình bắt tay này, nhằm hạ gục bằng cách làm cho máy tính bị quá tải. Như bạn đã biết, đầu tiên máy tính client sẽ gửi gói tin SYN đến máy tính server để bắt đầu kết nối. khi máy tính server nhận được gọi tin này, nó sẽ xử lý tím địa chỉ trả về và gửi ngược lại một gọi tin SYN ACK. Đây chính là điểm mà cuộc tấn công DoS tìm kiếm.

Một server bao giờ cũng chỉ có một số hạn chế các tài nguyên để dành cho các kết nối của client. Khi một server nhận được gói tin SYN khởi tạo từ client, server mới bắt đầu định vị các tài nguyên này. Điều này cũng có nghĩa là số kết nối client cùng lúc sẽ bị giới hạn. nếu cùng lúc có quá nhiều client kết nối, server sẽ bị tràn và sẽ “bức sô” do quá trình xử lý bị quá tải.

Yếu điểm của hệ thống lúc này sẽ hiện ra khi hacker cố tính đưa vào một địa chỉ trả về giả mạo trong gói SYN ban đầu. Như vậy, khi server gửi ngược gói tin SYN ACL cho client giả mạo, nó sẽ không bao giờ nhận được gói tin ACK kết thúc. Như vậy là đối với từng gói SYN giả mạo, các tài nguyên càng ngày càng bị buộc phải ngưng hoạt động cho đến khi mà server từ chối không nhận thêm kết nối nào nữa. Để tấn công được, cần phải có vô số các gói tin giả mạo, nhưng nếu hacker có nhiều máy tính nô lệ để cùng gửi các gói tin, anh ta có thể làm quá tải hệ thống một cách nhanh chóng.

SYN_Flooding2

Ảnh 2 : Tấn công kiểu SYN

Một ví dụ nổi tiếng của kiểu tấn công này đã xảy ra vào cuối năm 1999. Rất nhiều Web xịn đã bị sụm trước một cơn lũ các tín hiệu cùng lúc đến từ hàng trăm máy tính khác nhau. Các trang Web sẽ không hề hấn gì nếu cuộc tấn công chỉ xảy ra từ một máy; tuy nhiên, bằng việc dùng các chương trình điều khiển từ xa, một hoặc một số hacker sẽ phát động một cuộc tấn công phối hợp dùng cùng lúc hàng trăm-hàng ngàn máy tính, như vậy mục tiêu của họ sẽ bị quá tải một cách nhanh chóng.

———

Tài liệu tham khảo : Windows Internet Security-Protecting Your Critical Data (Seth Fogie & Dr. Cyrus Peikari)

Categories: HACKING - SECURITY

Bản quyền của blog.

June 29, 2008 Leave a comment

This blog uses this version of the Creative Commons License. This license has four main points:

  • You’re free to copy, distribute, and edit all entries on this blog.
  • If you use my entries, please cite and link to the original entries on this blog.
  • You may not use my entries for commercial purposes. Please contact me if you want to use my entries for commercial purposes.
  • If you alter, transform, or build upon my entries you may distribute the resulting work only under the same or similar license to this one.

DaoDuyHieu’s Blog dùng phiên bản này của Creative Commons Lisence. Bản quyền này có bốn điểm chính:

  • Bạn được toàn quyền sao chép, phán tán và chỉnh sửa các bài viết trên blog.
  • Nếu bạn sử dụng các bài viết thì xin ghi rõ nguồn (và liên kết) đến DaoDuyHieu’s Blog.
  • Bạn không được sử dụng các bài viết vì lợi nhuận. Nếu muốn sử dụng vì lợi nhuận thì xin liên hệ với tác giả.
  • Các bạn có thể sửa đổi bổ sung thêm vào các bài viết (ví dụ dùng tư liệu để viết bài khác) với điều kiện bài viết mới của bạn cũng theo cùng ba nguyên tắc này của Creative Commons Lisence.
Categories: HIEU'S BLOG

Dùng certificate để verify Webserver và mã hóa dữ liệu trao đổi trên Web (HTTPS)

June 29, 2008 3 comments

1. SSL là gì ?

Client vào trang web của www.amazon.com để mua sách và trả tiền bằng thẻ tín dụng. với protocol HTTP chạy ở port 80, mọi thông tin gửi và nhận trên đường truyền đều ở dạng clear text. Nhưng trên Internet có vô số kẻ xấu, luôn rình rập đẻ sniff các thông tin (capture hòng lấy được user name, password, số credit card…). Vì vậy, trong các giao dịch trên internet, cụng là web nhưng phải mã hóa dữ liệu. lúc đó sẽ sử dụng HTTPS chạy ở port 443, và phải có key để mã hóa.

clip_image001

Có ba cơ chế phát sinh key đã biết :

Preshared key : không dùng được trong trường hợp này, vì client và Amazon là 2 người xa lạ.

Kerberos : càng không được vì client và Amazon không ở cùng một domain.

Certificate Authority (CA) : dường như là tốt, nhưng thật ra là dư. Dư vì nếu dùng certificate, hai bên có thể verify lẫn nhau. ở đây đang chỉ có nhu cầu verify một chiều – tức chỉ có client đang cần verify Web-server xem có đúng là Amazon không, trước khi dùng key nào đó mã hóa các thông tin nhạy cảm để gởi đi.

clip_image003

Công ty Netspace đã cung cấp một tiêu chuẩn mã hóa dữ liệu dùng trong trường hợp này. Đó là SSL (Secure Socket Layer). Trong SSL, giả định rằng chỉ cần server có certificate là đủ, client không cần.

Nhưng nếu client không có certificate, làm sao hai bên trao đổi key được ? Quá trình trao đổi key diễn ra trong 6 bước :

B1. Client chủ động phát sinh một “Key”.

B2. Client yêu cầu Webserver gửi certificate của Webserver.

B3. Nhận được certificate của Webserver, client kiểm tra tính toàn vẹn của public key “pa”.

B4. Nếu “pa” còn tốt, client đem “Key” mã với “pa”, ra được “Cipher”.

B5. Client gửi “Ciper” cho Webserver.

B6. Webserver dùng private key “qa” của mình để giải mã “Cipher” ra lại “Key”.

Nói cách khác, SSL (Secure Socket Layer) là loại CA đặc biệt, verify một chiều. Sáu bước vừa trình chỉ để hiểu bản chất vấn đề. Trong thực tế, để chạy được SSL, Web-server chủ cần đi xin sẵn một certificate là đủ. Còn đối với client, gần như là trong suốt, cứ việc gõ https thay vì http hoặc người Administrator có thể cấu hình redirect sẵn trên webserver, client chỉ việc gõ http là vào https .

2. Bài LAB

– Cài đặt IIS (Internet Information Services) và tạo trang web defauft, truy cập bằng http://localhost/ bình thường. Nhưng truy cập theo https://localhost/ sẽ không được.

– Đi xin certificate cho Webserver : chạy IIS Manager, vào Web Sites, chọn Default Web Site Properties – tab Directory Security – mục Secure Commnunications – Nút Server Certificate và làm theo wizzard.

– Sau khi xin certificate thì xem lại bằng nút View Certificate.

– Client truy cập lại trang web default bằng https://localhost/ sẽ có thông báo về security nhưng không quan trọng, chọn nút Yes sẽ truy cập tốt.

Trong thực tế, client có thể chọn nút View Certificate để xem certificate của Web-server, nhất là xem Root CA. Nếu Root CA của Web-server chưa nằm trong trusted list, client phải add certificate của Root Ca vào trusted list bằng tay. Lúc đó, nếu đúng là Web-server tin tưởng được thì chọn nút Yes để tiếp tục trao đổi thông tin.

Categories: NETWORK - SECURITY

The story of Bill Gates, form the early years to Microsoft to the next big idea.

June 28, 2008 Leave a comment
Categories: MICROSOFT

Bill Gates tạm biệt Microsoft trong nước mắt

June 28, 2008 Leave a comment

Trong ngày làm việc cuối cùng, ông cùng Steve Ballmer hồi tưởng lại những ngày tháng đã qua và cả hai người đã không kìm được nước mắt khi Giám đốc điều hành tập đoàn phần mềm trao tặng cuốn sổ lưu niệm.

Gates2

Tại buổi chia tay, Gates ngồi bên người bạn lâu năm Ballmer và nhắc tới một vài kỷ niệm đẹp từ thời hợp tác với IBM trước khi công ty máy tính này tự phát triển phần mềm điều hành riêng và mối quan hệ giữa bên trở nên căng thẳng.

"Họ tiếp tục phát triển OS 2, còn chúng tôi đi lên cùng Windows. Cuộc chiến giữa chàng David bé nhỏ (Microsoft) với gã khổng lồ Goliath (IBM) có vẻ đã đạt kết quả hợp lý", lời nhận xét của Gates khiến 830 nhân viên tham gia phải bật cười.

Nhà đồng sáng lập Microsoft cùng Paul Allen năm 1975 thừa nhận họ từng đôi lần chùn bước và mô hình hoạt động hiện vẫn chưa hoàn hảo: "Nguy hiểm nhất là khi chúng ta bỏ lỡ cơ hội lớn hay khi không tìm được người tài giỏi. Chuyện này đã xảy ra nhiều lần. Mọi thứ vẫn ổn, nhưng nên càng hạn chế càng tốt".

Gates vẫn giữ chức chủ tịch và tiếp tục tham gia những dự án do Steve Ballmer cùng hai cộng cự Craig Mundie và Ray Ozzie thực hiện. Ông cũng khẳng định sự quyết tâm rời Microsoft: "Đã đến lúc tôi cần nhường đường để cho những bước tiến mới diễn ra".

Gates3

Những người tham gia cuộc nói chuyện đã xúc động khi Gates tâm sự Microsoft luôn đóng vai trò trung tâm và ăn sâu vào cuộc sống cá nhân đến mức nhiều lần ông lái xe đến trụ sở trong khi đáng ra phải tới một nơi khác, đưa con đến trường chẳng hạn.

Khi Gates nhắc đến buổi đi xem phim đầu tiên, thì Steve Ballmer, CEO của Microsoft, nhớ lại: "Khi về, chúng tôi đã nhảy, đã hát nhạc Gene Kelly và ai đó đã vật tôi ngã xuống đất".

Tới lúc phải nói lời chia tay, Ballmer đùa rằng việc trao quà cảm ơn là điều không thể tránh. Và hai người đàn ông đã khóc.

Gates4

Bill Gates cố kìm nước mắt…

"Chúng ta đã có cơ hội lớn. Và Bill là người đã trao cơ hội đó cho chúng ta. Tôi muốn cảm ơn Bill vì điều đó", Ballmer nói, khuôn mặt ông ửng đỏ.

Gates5

… khi Steve Ballmer xúc động nói lời cảm ơn.

Tất cả các nhân viên đứng dậy và Gates gạt nước mắt chào.

Nguồn : Vnexpress.net

Categories: MICROSOFT

Phim lab cài đặt, cấu hình và quản lý Windows Server 2003 Active Diectory – Phần 1

June 27, 2008 Leave a comment

Phần 1: Triển khai nhiều server chạy song song trên Windows Server 2003 AD

Nội dung của phim lab là hướng dẫn triển khai cài đặt vả cấu hình hệ thống AD có nhiều Domain Controller, Global Catalog Server và DNS Server chạy song song.

AD

Phim lab gồm các bước :

1. Nâng cấp Primary Domain Controller
2. Join Domain
3. Nâng cấp Additional Domain Controller
4. Cấu hình Global Catalog
5. Cài đặt và cấu hình Secondary DNS Server

Categories: NETWORK - SECURITY