Điền thông tin đăng nhập vào (username, password) nhưng khoan bấm nút Đăng Nhập.
·
Nếu chưa bật Live HTTP Headers thì bật nó lên. Nếu bật rồi thì bấm Clear để xoá hết các request cũ không liên quan.
·
Bây giờ mới bấm nút Đăng nhập và Live HTTP Headers sẽ hiển thị 1 đống thông tin. Vì là đăng nhập nên tìm trong Live HTTP Headers chỗ nào có POST và có tên host vn-zoom.com với login, thì thấy:
http://www.vn-zoom.com/login.php?do=login
POST /login.php?do=login HTTP/1.1
Host: www.vn-zoom.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0 Cyberfox/52.2.0
Các Header như Accept, Accept-Language, Accept-Encoding, Connection, Content-Length, User-Agent,DNT: 1 ta không cần để ý đến chúng vì UDF đã add sẵn hết rồi. Xem thêm chi tiết tại mục $sAdditional_Headers
3/ Phân tích Referer
Hình trên có Referer nhưng không điền vào tham số $sReferer cũng được, chừng nào request thất bại mới điền vào để thử.
4/ Phân tích Cookie
Những cookie tạp nham thường có dạng __abcxyz, ___abcxyz ta không cần để ý đến chúng.
5/ Phân tích Data cần gửi đi
DataToSend thường nằm thụt lùi qua phải hơn so với các dòng khác, nó là:
Đoạnvb_login_md5password=1ade52bfb3f7792a0f18febf3dccb2bb đọc tên của Key ta có thể hiểu ngay ý nghĩa của nó là Password đã bị mã hoá MD5 → Sử dụng hàm _GetMD5 để mã hoá mật khẩu.
·
Ta có thể đặt username và vb_login_md5password, vb_login_md5password_utf là biến để dễ tuỳ biến hơn: $sDataToSend = vb_login_username=' &$name& ... & '&vb_login_md5password=' &$pass& .....
·
Vì chuỗi gửi đi $sDataToSend phải là chuỗi không dấu, nhưng sẽ có trường hợp đặt tên cho tài khoản có chứa ký tự có dấu nên để chắc ăn, ta dùng hàm _URIEncode($name) để biến chuỗi có dấu thành chuỗi không dấu theo chuẩn URL.
6/ Phân tích ngoài luồng
Thông thường sau khi đăng nhập thành công thì một trang web sẽ tự động redirect về trang chủ đã có đầy đủ thông tin tài khoản nhưng trang vn-zoom thì nó sẽ qua một bước trung gian nữa như hình dưới:
Đang chuyển tới
Cảm ơn, autoit_httprequest đã đăng nhập thành công
Bước này đơn giản chỉ cần request đến trang chủ là xong (Sau khi đã request đăng nhập thành công).
; → Sau request trên thì _HttpRequest sẽ lưu Cookies đăng nhập vào cache (Nếu thành công).
; → Tham số $iReturn của _HttpRequest điền số mấy cũng được bởi cái ta cần là Cookies đăng nhập đã sẵn sàng có trong cache khi request thành công. Vì vậy ta điền 0 để tăng tốc độ request (do không tốn thêm thời gian để lấy bất cứ giá trị trả về nào)
$rq2 = _HttpRequest(2, 'http://www.vn-zoom.com') ; Request đến trang chủ như Phân tích ngoài luồng ở trên