Archive for June, 2009
Get Y!’s avatar & invisible checker
by vietfov on Jun.29, 2009, under IT
Xem avatar & kiểm tra ẩn danh (invisible checker) các nick yahoo http://vietfov.net/ya
Search with Google & Bing once
by vietfov on Jun.29, 2009, under IT

Bing có khá nhiều điểm ưu và mới hơn so với Google, mặc dù trong một nhóm từ khoá nào đó Google vượt trội về số lượng kết quả tìm kiếm trả về.
Trước khi đắn đo xem nên chọn cái gì, tớ make cái tool này để search cùng lúc 2 ông “bự” này. Có thể click chọn trực tiếp để add vào search bar trong trình duyệt (Firefox|IE…).
Obama và con ruồi
by vietfov on Jun.22, 2009, under Relaxation

Hình ảnh Obama đập con ruồi được đưa lên các chuyện mục Hình ảnh ấn tượng, khoảnh khắc ấn tượng; ấn tượng của ngày, tuần, tháng, năm. Hình ảnh Obama đập con ruồi được đưa vào các nghiên cứu vật lý, phân tích sự chính xác đến lạ kì trong cú vung tay của Obama. Hình ảnh Obama đập ruồi (rồi sẽ) được đưa vào các hình thức quảng cáo dụng cụ đập ruồi, sẽ có nhiều game đập ruồi, sẽ có nhiều câu chuyện ngộ nghĩnh bám theo trong hầu hết các lĩnh vực, y tế, chính trị, kinh tế, xã hội, kĩ thuật…
Obama xài BlackBerry, RIM được một phen hưởng lợi, hàng loạt người dùng BB để bắt chước Obama (đó là trào lưu chứ không hẳn là đam mê), mặc dù cầm chiếc BB lên mà ngỡ ngàng không biết *bấm bấm* ra sao cho nó *chạy*.
Obama đập con ruồi, cả thế giới cùng hưởng lợi, giải trí có, kinh doanh có, chính trị có, khoa học có… Mấy tay truyền thông hả hê hốt bạc.
Hội bảo vệ động vật (PETA) lại lên tiếng khuyên nhủ Obama nên kiềm chế trước khi suy nghĩ, trước khi hành động. Cho rằng hành động của Obama là một hành động phá hoại và kêu gọi lòng trắc ẩn trong con người ông. Nhân dịp này một tờ báo viết rằng Obama giết con ruồi, giết cả người Iran (Obama kills fly, Obama kills Iranians) khi ví von quyền lực vô song (làm mọi điều không cần suy xét) của Obama được ví như George Bush.
Hàng triệu lượt xem, hàng trăm lời bình luận, “Liệu ông ta có lách nổi một chiếc giày bay không nhỉ?”, hàng loạt Poll mới được mở “Was Obama wrong to kill the fly?”, BBC còn hài hước mở một trang *mẹo vặt* 10 cách để giết một con ruồi để phân tích sâu hơn về cú đập ruồi chính xác của người được ví như ninja và có quyền lực nhất thế giới.
Một vài ý kiến comment “Đừng xem thường Obama để rồi lãnh đủ như chú ruồi”, thế mới biết với Obama, một con ruồi cũng có thể đưa ông lên cho thế giới bàn tán. “That was pretty impressive, wasn’t it? I got the sucker.”
Một cách nhìn khác, quảng cáo thương hiệu *ruồi* với người nổi tiếng luôn luôn là hướng đi đúng trong kinh doanh.
Wind of change
by vietfov on Jun.13, 2009, under Relaxation

(Wind of Change là bản power ballad năm 1990 của Scorpions.)
Lời bài hát ca tụng những thay đổi chính trị ở Đông Âu tại thời điểm đó – như sự sụp đổ của bức tường Berlin, tự do gia tăng ở khối cộng sản (điều này đã sớm dẫn đến sự sụp đổ của Liên Xô), và rõ ràng sự kết thúc của Chiến tranh lạnh.
Bài hát đã xuất hiện trên album năm 1990 có tên Crazy World, nhưng đã không trở thành một hit khắp thế giới cho đến năm 1991, khi nó lên đỉnh bảng xếp hạng ở Đức và khắp châu Âu, và #4 ở Hoa Kỳ và #2 ở Anh quốc. Sau đó nó xuất hiện trong album trực tiếp năm 1995 Live Bites,trong album năm 2000 của họ Moment of Glory, với Berlin Philharmonic Orchestra, và album unplugged năm 2000 Acoustica.
Phương trời mới (Luồng gió của sự thay đổi)
Dọc theo con sông Moskva
Tôi bước vào công viên Gorky
Được – Cảm nhận một cảm giác lạ kì
Một đêm hè tháng 8
Những người lính
Cũng cảm nhận được những gì đổi thayI follow the Moskva
Down to Gorky Park
Listening to the wind of change
An August summer night
Soldiers passing by
Listening to the wind of changeThế giới đang gần nhau hơn
Bạn có nghĩ
rằng chúng ta là những người anh em thân thiết
Ở tương lai sáng kia
Tôi cảm nhận khắp mọi nơi
Cùng hoà nhịp vui theo trong phương trời mớiThe world closing in
Did you ever think
That we could be so close, like brothers
The future’s in the air
I can feel it everywhere
Blowing with the wind of changeCho tôi đến với khoảnh khắc kì diệu này
Vào một đêm huy hoàng
Nơi những đứa trẻ mơ những giấc mơ xa hơn
Theo trong phương trời mớiTake me to the magic of the moment
On a glory night
Where the children of tomorrow dream away
In the wind of changeDạo quanh
Những ký ức xa xôi
đã mãi lụi tàn theo quá khứWalking down the street
Distant memories
Are buried in the past foreverCho tôi đến với khoảnh khắc kì diệu này
Vào một đêm huy hoàng
Nơi những đứa trẻ của nay mai cùng sẻ chia nhau những niềm mơ ước
Cùng tôi và emTake me to the magic of the moment
On a glory night
Where the children of tomorrow share their dreams
With you and meTrong từng khuôn mặt hào hứng rạng ngời chào đón viễn cảnh tươi sáng đã chờ đợi tiếng chuông hoà bình ngân nga trong tận sâu thẳm, sáng bùng lên. Hãy để giai điệu đàn balalaika cất lên những gì cây guitar của tôi muốn nói.
The wind of change blows straight
Into the face of time
Like a stormwind that will ring
The freedom bell for peace of mind
Let your balalaika sing
What my guitar wants to say
Phân tích Y!M Protocol (Part3)
by vietfov on Jun.07, 2009, under IT
Ta đã nói về chuỗi challenge được gửi trả về w^(o&4^(o|(4/k%1*5… và nghĩ nó như một phép toán số học.
Nhưng thực tế thì không phải là như vậy, các dấu ngoặc ( ) chỉ có mục đích duy nhất là “rắc rối hoá” chuỗi challenge string, trông như một biểu thức phức tạp…
Công việc tạo mã Response sẽ tạo một chuỗi bốc tách từ chữ, số và các “phép toán” của challenge string. Sau đó chúng được biến đổi tiếp bằng các công đoạn dịch bits rất lằng nhằng và phức tạp (trong khuôn khổ 1 bài phân tích Protocol, bài viết không đào sâu vào chi tiết thuật toán). Bên cạnh đó, thuật toán tiếp tục sinh thêm 2 chuỗi mới, 1 chuỗi encoded bằng cách lấy mã YahooBase64 (YB64) của mã MD5 của chuỗi Password; và chuỗi thứ 2 cũng được encoded bằng YB64 của thuật toán MD5 trộn với 1 mã Salt có giá trị “$1$_2S43d5f” (Do Yahoo quy ước)
String crypted = YahooBase64(md5(md5Crypt(password, “$1$_2S43d5f”)));
[YahooBase64 là chuẩn format của YMSG (unofficial named). Còn có tài liệu gọi là Mac64. Chuẩn này chỉ khác so với Base64 thông thường ở 3 kí tự "." ,"_" & "-" ứng với "+" , "\" & "=" ở Base64.]
Trong nhiều ứng dụng bảo mật, khi mã hoá MD5 thường kèm theo salt, salt là chuỗi sinh ngẫu nhiên kèm với lần tạo password đầu tiên, và salt hay được lưu trữ ở máy chủ để tránh hacker nếu sniff được đoạn mã MD5 thì cũng không thể fake được vì thiếu mã salt…
Tiếp tục với 2 chuỗi vừa tạo ra, lần lượt mỗi chuỗi kết hợp với chuỗi đầu tiên, dùng các thuật toán SHA-1, gom nhóm bits, dịch bits (mã hoá 2 bytes (== 16bits) bằng 3 chars), và thêm các kí tự “,” “;” ở cuối và “=” ở giữa đoạn string cuối cùng để trông đoạn code như phép gán… 2 chuỗi sau khi encoded có dạng:
(Tham khảo thêm trong các mã nguồn kèm theo bài này)
O=kA,w=g4,V=a3;L=jC,h=Ej,h=Fa,V=na,E=b3;R=p9,S=jj,
OK, bây giờ client gửi lại giá trị này với key 6 và 96 (service 84), kèm với các vectors:
0: ID
2: ID
2: 1
244: 2097087
148: 180
135: CLIENT_VERSION
1: ID
- Khi các thông tin đã chính xác, quá trình đăng nhập thành công! (Nick của bạn sẽ phát sáng trên máy người khác)
Nhờ các công đoạn lằng nhằng (monkey around) trên, Yahoo đã không ít lần khiến các 3nd party phải lao đao khi muốn tái hiện lại đoạn code chanllenge của hãng để tích hợp Y!M trong các ứng dụng của họ.
Thử lùi thời gian lại để có cái nhìn rõ hơn về quá trình lao lực với Chanllenge Reponse này của Yahoo!Inc, trong những phiên bản đầu tiên của mình, Yahoo sử dụng đường Http Proxy để tiếp nhận thông tin đăng nhập từ client, tuy nhiên các thông tin gửi đến server đều ở dạng clear text nên rất dễ bị thất lạc thông tin. Sau đó Yahoo! cải tiến bằng cách trước khi password được gửi, nó sẽ bị mã hoá bằng thuật toán MD5 (Dịch vụ webmail trước đó còn sử dụng Java-Script để mã hoá MD5 ngay tại browser). Mặc dù MD5 là thuật toán mã hoá mà đến nay chưa thể decoded nhưng có thể thấy các thông tin gửi lên server sẽ luôn là một hằng số nếu sử dụng theo phương thức này. Mặc dù ngay sau đó, Yahoo! áp dụng trộn thêm chuỗi Salt sinh bởi client trong các lần đăng nhập để giá trị encoded cuối cùng luôn được thay đổi nhưng xem ra thuật toán vẫn rất dễ bị nắm bắt và khai thác.
Ngày 24/6/2004, hãng Trillian tạo ra một ứng dụng 3nd party để kết nối với accounts Y!M, không hỗ trợ các kiểu quảng cáo của Yahoo!. Ngay lập tức bị Yahoo! phản kháng. Từ đó, nhiều cuộc tranh cãi đã nổ ra giữa Yahoo!Inc với các hãng 3nd party khai thác dịch vụ của Yahoo. Và rồi Yahoo quyết tâm thay đổi thuật toán mãnh liệt nhằm ngăn cản công việc nghiên cứu đến từ các tổ chức bên ngoài. Giải thuật mới (đã giới thiệu ở trên) thật sự phức tạp mà đến nay vẫn được Yahoo sử dụng cùng với phiên bản Y!M 9.0 mới nhất. Tuy đã ngăn cản được Trillian trong một thời gian nhất định nhưng cuối cùng, thuật toán đó cũng đã bị cracked và rò rỉ qua mạng Internet cho đến ngày nay.
Sau khi đoạn mã hash chính xác đáp trả lại server, quá trình đăng nhập đã thành công mà không cần thêm bất cứ một thông tin nào. Lúc này server sẽ trả về thông tin thêm về tài khoản (Full name, Sex, Virtual IDs, Friends list, Denied list, Unread email…) trong một gói tin bao gồm nhiều YMSG Packets (multiple packets), client cần bóc tách và xử lí từng đoạn phù hợp.
2) Khái quát các dịch vụ khác (Send msg, Status…)
- Mỗi dịch vụ được quy chuẩn bởi Yahoo, ở version 15 có các tags của dịch vụ thông thường sau:
• 0×06 MESSAGE
Format 1 : (status = 0×00000001) Online message
5 : to (yahoo id)
4 : from (yahoo id)
14 : message text
[optional extension]
63 : imvironment name or “;0″
64 : <unknown> “0″
97 : utf8 encode true/false
Format 2 : (status = 0×00000005) Offline message(s)
31 : <unknown> “6″ ——–+
32 : <unknown> “6″ |
5 : to (yahoo id) |
4 : from (yahoo id) | Repeat for each message
15 : Unix timestamp |
14 : message text |
97 : <unknown> “1″ ——–+
Cài đặt thêm các cặp giá trị (63,0) (64,0) (206,0) với các accounts của hotmail liên thông.
• 0×55 / 0xF1
LIST
89 : Virtual ID
3 : Primier ID
216, 254: Alias ID (First name, Last name)
59 : HTTP cookie Y
59 : HTTP cookie T
59 : HTTP cookie C
3 : yahoo id
100 : <unknown> “0″
101 : <unknown> “”
102 : <unknown> “”
93 : <unknown> “86400″
149 : <unknown> base64 style encoded binary
150 : <unknown> base64 style encoded binary
151 : <unknown> base64 style encoded binary
65 : Group name
7 : friend ID
(241 : 2) hotmail user
301 : 319
300 : 319
(301 : 319) ignored friends list
(300 : 319) ignored friends list
• 0xF0 UNKNOWN SERVICE (Online + Status ID)
13 : 1 Availble
19: Custom status
• 0×02 LOGOFF
0: ID
- VietQ