Details
-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
4.6.1, 4.6.2, 4.6.3, 4.7.0
-
None
-
6ccbfd6ca498da04e4ef02102c4ded9768225b5a
Description
Standard Qt demo web browser and any application that uses a proxy can not get authorization from the proxy. The old version of qt 4.4 is working properly. I don't compile qt 6.2 browser itself, I downloaded compiled libraries (SDK) from the official site.
I record session between my computer and Proxy and attach one packet from this session (from me to proxy).
In the end of this packet you will see that sniffer don't show Domain and Username correctly. Sniffer shows first character of Domain and Username (S instead of SPIRIT and B instead of Bagrinovsky).
Then I watch this packet in binary view and I find my Login (Bagrinovsky) and Domain (Spirit). They transmitted fully and have right offset and len. But snifer can't parse this packet right and write only first character of Username and Domain. Packets generated by version Qt 4.4 parsed by sniffer right and snifer shows Login and Domain fully. And version 4.4 work right. Maybe errors in format of generated packet by Qt?
Frame 23 (777 bytes on wire, 777 bytes captured) Ethernet II, Src: Intel_0f:d8:23 (00:19:d1:0f:d8:23), Dst: Intel_08:8b:2f (00:0e:0c:08:8b:2f) Internet Protocol, Src: 192.168.125.72 (192.168.125.72), Dst: 192.168.125.2 (192.168.125.2) Transmission Control Protocol, Src Port: 5810 (5810), Dst Port: 3128 (3128), Seq: 1, Ack: 1, Len: 723 Source port: 5810 (5810) Destination port: 3128 (3128) Sequence number: 1 (relative sequence number) [Next sequence number: 724 (relative sequence number)] Acknowledgement number: 1 (relative ack number) Header length: 20 bytes Flags: 0x18 (PSH, ACK) 0... .... = Congestion Window Reduced (CWR): Not set .0.. .... = ECN-Echo: Not set ..0. .... = Urgent: Not set ...1 .... = Acknowledgment: Set .... 1... = Push: Set .... .0.. = Reset: Not set .... ..0. = Syn: Not set .... ...0 = Fin: Not set Window size: 65535 Checksum: 0x7e89 [incorrect, should be 0xfead (maybe caused by "TCP checksum offload"?)] [Good Checksum: False] [Bad Checksum: True] Hypertext Transfer Protocol GET http://ya.ru/ HTTP/1.1\r\n Request Method: GET Request URI: http://ya.ru/ Request Version: HTTP/1.1 User-Agent: Mozilla/5.0 (Windows; N; Windows NT 5.1; ru-RU) AppleWebKit/533.3 (KHTML, like Gecko) demobrowser/0.1 Safari/533.3\r\n Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,/;q=0.5\r\n Connection: Keep-Alive\r\n Accept-Encoding: gzip\r\n Accept-Language: ru-RU,en,*\r\n Host: ya.ru\r\n Proxy-Authorization: NTLM TlRMTVNTUAADAAAAAAAAAGIAAACiAKIAYgAAAAwADABAAAAAFgAWAEwAAAAAAAAAYgAAAAAAAAAAAAAAAQIAAFMAUABJAFIASQBUAEIAYQBnAHIAaQBuAG8AdgBzAGsAeQDkiq9Eg861ZLbcOuIGsPfrAQEAAAAAAACABmaRIS/LATljY2JhNTRhAAAAAAIADABTAFAASQBSAEkAVAABA NTLMSSP NTLMSSP identifier: NTLMSSP NTLM Message Type: NTLMSSP_AUTH (0x00000003) Lan Manager Response: Empty NTLM Response: E48AAF4483CEB564B6DC3AE206B0F7EB0101000000000000... Domain name: S Length: 12 Maxlen: 12 Offset: 64 User name: B Length: 22 Maxlen: 22 Offset: 76 Host name: NULL Session Key: Empty Flags: 0x00000201 \r\n
I describe this bug in QTBUG-9408 bugreport. Qt developers make changes in authenticator.cpp and close QTBUG-9408. Then I download last version with this fix from http://qt.gitorious.org and see the same bug in my system.
Attachments
Issue Links
- resulted in
-
QTBUG-17322 Fix NTLM(v2) proxy authentication once and for all
- Closed