<![CDATA[Latest posts for the topic "Học HTTP qua các công cụ sniffer"]]>
/hvaonline/posts/list/31.html
JForum - http://www.jforum.netHọc HTTP qua các công cụ sniffer(Tham khảo từ cuốn OReilly-HTTPTheDefinitiveGuide trên thư viện HVA)
Tớ sẽ cố gắng đi qua các phần chính của cuốn sách này với việc minh hoạ bằng cách sniff các packets. (Cứ lấy mục tiêu là HVA cho "nhanh gọn").
Cấu trúc của HTTP messages gồm 3 phần:
Start line: tất cả các HTTP messages đều bắt đầu với start line. Request mess nói những gì cần làm, reponse mess “nói” những gì đã xảy ra. Version number chỉ ra phiên bản cao nhất của HTTP mà ứng dụng hỗ trợ.
Header fields: name:value, kết thúc bằng blank line. Có các loại header: General, request, response, entity, extension.
Body: request and response bodies, chứa đựng bất cứ loại dữ liệu nào. Entity body chính là payload của HTTP mess, chúng là những gì mà HTTP phải “chở” đi.
Request messages là các HTTP messages gửi từ client đến web server, ví dụ:
Response messages là các messages gửi từ web server đến client, ví dụ:
HTTP/1.1 200 OK\r\n
-----------------------------------------------------------------------------------------------------------------
Date: Tue, 04 Mar 2008 03:10:53 GMT\r\n
Server: Epecha\r\n
Cache-Control: max-age=300\r\n
Expires: Tue, 04 Mar 2008 03:15:53 GMT\r\n
Vary: Accept-Encoding,User-Agent\r\n
Content-Encoding: gzip\r\n
Content-Length: 6246
Keep-Alive: timeout=4, max=250\r\n
Connection: Keep-Alive\r\n
Content-Type: text/html;charset=UTF-8\r\n
\r\n
Content-encoded entity body (gzip): 6246 bytes -> 45543 bytes
-----------------------------------------------------------------------------------------------------------------
Line-based text data: text/html
\r\n
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> \r\n
\r\n
<html>\r\n
<head>\r\n
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">\r\n
<meta http-equiv="Pragma" content="no-cache">\r\n
<meta http-equiv="Expires" content="-1">\r\n
<meta name="description" content="HVA discussion board">\r\n
<meta name="keywords" content=", jforum, jforum java, jforum forum, forum java, java jforum, java forum, forum, rafael steil, bulletin board, java bb, javabb, hva, hvaonline, hvazone, hvaforum">\r\n
<meta name="resource-type" content="document">\r\n
<meta name="distribution" content="global">\r\n
<meta name="robots" content="index,follow">\r\n
<meta name="rating" content="general">\r\n
<style type="text/css">\r\n
<!-- \r\n
@import url( "/hvaonline/templates/viet/styles/style.css");\r\n
-->\r\n
</style>\r\n
<style type="text/css">\r\n
<!--\r\n
@import url("/hvaonline/templates/viet/styles/vi_VN.css");\r\n
-->\r\n
</style>\r\n
<title> - .:: HVAOnline ::.</title>\r\n
\r\n
</head>\r\n
<body class="vi_VN">\r\n
\r\n
<!--\r\n
Original theme from phpBB http://www.phpbb.com) subSilver\r\n
Created by subBlue design\r\n
http://www.subBlue.com\r\n
Modifications by JForum Team \r\n
Extended and customised by HVA Team\r\n
Added more features and Black Silver theme designed by HVA\r\n
...
Hãy xem về một response message khác:
HTTP/1.1 304 Not Modified\r\n
-----------------------------------------------------------
Date: Tue, 04 Mar 2008 03:10:59 GMT\r\n
Server: Epecha\r\n
Connection: Keep-Alive\r\n
Keep-Alive: timeout=4, max=250\r\n
Expires: Tue, 04 Mar 2008 03:15:59 GMT\r\n
Cache-Control: max-age=300\r\n
\r\n
-----------------------------------------------------------
(Giữa các phần của một HTTP message được ngăn cách bằng một đường kẻ ngang)
Có điểm gì khác giữa 2 response message: Bạn để ý status code của cái thứ nhất là 200 OK - tức là "success", bất kỳ dữ liệu yêu cầu nào đều nằm trong "body" của response message. Còn status code của response thứ hai là 304 Not Modified - chỉ ra rằng resource trên server không thay đổi gần đây. Responses với "status code" này không chứa đựng một entity body.
Phần tiếp theo, chúng ta sẽ tìm hiểu sâu và các thành phần trong một HTTP message.]]>/hvaonline/posts/list/19824.html#117903
/hvaonline/posts/list/19824.html#117903
GMTRe: Học HTTP qua các công cụ snifferHTTP/1.1 200 OK\r\n
-----------------------------------------------------------------------------------------------------------------
Date: Tue, 04 Mar 2008 03:10:53 GMT\r\n
Server: Epecha\r\n
Cache-Control: max-age=300\r\n
Expires: Tue, 04 Mar 2008 03:15:53 GMT\r\n
Vary: Accept-Encoding,User-Agent\r\n
Content-Encoding: gzip\r\n
Content-Length: 6246
Keep-Alive: timeout=4, max=250\r\n
Connection: Keep-Alive\r\n
Content-Type: text/html;charset=UTF-8\r\n
\r\n
Content-encoded entity body (gzip): 6246 bytes -> 45543 bytes ....
Dòng đc đánh dấu không có trong response, mà do Ethereal (wireshark) diễn giải cho mình hiểu, thực chất đoạn body của response đc nén kiểu gzip chứ không phải plain text như các bạn thấy.
có vài lời vậy thôi, quanta tiếp nhé :D]]>/hvaonline/posts/list/19824.html#117933
/hvaonline/posts/list/19824.html#117933
GMTRe: Học HTTP qua các công cụ sniffer/hvaonline/posts/list/19824.html#117948
/hvaonline/posts/list/19824.html#117948
GMTRe: Học HTTP qua các công cụ sniffer
father_nghia_den wrote:
Hi quanta,
Em có một số thắc mắc
Trong packet request bạn bắt được bằng wireshark em thấy có dòng
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.12) Gecko/20080208 Fedora/2.0.0.12-1.fc8 Firefox/2.0.0.12\r\n
Vậy dòng này có ý nghĩa gì?
Dòng User-Agent xác định tên và một vài dòng miêu tả về ứng dụng được sử dụng ở phía client. Đôi khi nó chứa một vài thông tin về máy mà client đang chạy (Như trên bạn nhìn thấy là tớ dùng Fedora kiến trúc i686)
father_nghia_den wrote:
Sao em để ý lúc nào cũng là Mozilla mặc dù client dùng IE để request tới webserver?
Tớ vừa phải cài lại IE trên Fedora để test trường hợp của bạn, output đây:
GET / HTTP/1.0\r\n
Accept: */*\r\n
Accept-Language: en-us;q=0.5\r\n
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)\r\n
Host: hvaonline.net\r\n
Connection: Keep-Alive\r\n
\r\n
còn đây là output cho Konqueror (có chức năng như một web browser);
Câu hỏi này của bạn khá hay. Tớ google và tìm được câu trả lời thế này:
Note that most browsers today identify themselves using the "Mozilla" — an early name for the Navigator browser — product name, even if they are not derived from the original Netscape Navigator browser. Notice in the listing above that even Microsoft's Internet Explorer identifies itself using the "Mozilla" product name to indicate that it is roughly compatible to a specific version of Navigator or its successors. Today, "Mozilla" also refers to a newer Web browser available from the Mozilla Foundation at www.mozilla.org.
(Trích từ: http://www.ericgiguere.com/articles/masquerading-your-browser.html)]]>/hvaonline/posts/list/19824.html#117963
/hvaonline/posts/list/19824.html#117963
GMTRe: Học HTTP qua các công cụ snifferGolden Autumn đã upload lên tại http://rapidshare.com/files/59824751/Syngress.Wireshark.and.Ethereal.Network.Protocol.Analyzer.Toolkit.Nov.2006.pdf
Để bắt đầu, bạn chạy Wireshark với root account, màn hình xuất hiện:
Liệt kê các capture interfaces:
Danh sách các interfaces xuất hiện bao gồm: Ethernet, loopback, virtual, ...
Chọn Options trên dòng eth0:
Chọn tiếp Capture filters:
Chọn TCP HTTP port (80), nhấp OK -> nhấp Start để Wireshark tiến hành capture:
Nhấp Stop khi muốn dừng. Lọc những packets có giao thức là HTTP bằng cách:
Chọn HTTP và nhấp OK:
Kết quả xuất hiện như sau:
Chọn một packet bất kỳ, và expand dòng Hypertext Transfer Protocol để xem nội dung HTTP message:
]]>/hvaonline/posts/list/19824.html#119045
/hvaonline/posts/list/19824.html#119045
GMTRe: Học HTTP qua các công cụ sniffer/hvaonline/posts/list/19824.html#119119
/hvaonline/posts/list/19824.html#119119
GMTRe: Học HTTP qua các công cụ snifferHyperText Transfer Protocol(HTTP) là giao thức lớp Application nó cung cấp một giao thức cho việc truy vấn HyperText Markup language(HTML) và các dữ liệu khác của web Site.
-Có 3 phiên bản HTTP.
+ HTTP/0.9: Là phiên bản đầu tiên đơn giản chỉ hỗ trợ tùy chọn đễ nhận được một trang Web.
+ HTTP/1.0: Phiên bản này được bỗ sung bởi nhiều trường dữ liệu gọi là các tiêu đề (header) vào thông số kỹ thuật.
+ HTTP/1.1: Là phiên bản cải tiến của HTTP/1.0, ưu điểm của HTTP/1.1 là có các kết nối ỗn định, tạo ống dẫn và kiễm soát cache.
- Các trình duyệt ngày nay cung cấp tính năng tương thích ngược giữa 2 phiên bản HTTP trên
:) ]]>/hvaonline/posts/list/19824.html#119484
/hvaonline/posts/list/19824.html#119484
GMTRe: Học HTTP qua các công cụ sniffer/hvaonline/posts/list/19824.html#141284
/hvaonline/posts/list/19824.html#141284
GMTRe: Học HTTP qua các công cụ sniffer
KVD wrote:
Em có một vài câu hỏi về sniffer... Mong các anh giải thích!
+ Với một sniffer, ta có thể capture được các HTTP Request dạng POST và GET gửi đến Server hay không?
+ Nêu được thì với nó ta có thể viết những ứng dụng web tự động sử dụng cURL của PHP là hiển nhiên phải không?
1 - Vẫn capture dc , nói chung cái nào đi ra , đi vào NIC là capture dc hết
2 - Mình đã tửng thử viết 1 ứng dụng nhỏ tự động sử dụng cURL cung cấp các header đến server
Thân]]>/hvaonline/posts/list/19824.html#141285
/hvaonline/posts/list/19824.html#141285
GMTHọc HTTP qua các công cụ snifferServer: Epecha\r\n
đây là webserver gì vậy các anh?]]>/hvaonline/posts/list/19824.html#190939
/hvaonline/posts/list/19824.html#190939
GMTHọc HTTP qua các công cụ sniffer
intellirookie wrote:
Server: Epecha\r\n
đây là webserver gì vậy các anh?
À, web server... http://www.google.com.vn/#hl=vi&source=hp&q=%22Epecha%22+%2B+%22conmale%22+site%3Ahvaonline.net&btnG=T%C3%ACm+v%E1%BB%9Bi+Google&meta=&aq=f&fp=bf2991ab78f3c67c ấy mà.]]>/hvaonline/posts/list/19824.html#190942
/hvaonline/posts/list/19824.html#190942
GMTHọc HTTP qua các công cụ sniffer /hvaonline/posts/list/30943.html]]>/hvaonline/posts/list/19824.html#190953
/hvaonline/posts/list/19824.html#190953
GMT