Chuyện tôi vào danh sách hacker thiện chí của Google

Khoảng hai năm trước tôi có được một thợ săn đầu người của Google gửi email nói thử phỏng vấn với họ xem sao. Tôi có gửi hồ sơ đến chỗ họ và vượt qua vòng gửi xe, vì thế họ tiếp tục mời tôi phỏng vấn trực tiếp tại đại bản doanh của họ trên Mao-tần Vìu. Khi Google mời ai đến phỏng vấn ở đại bản doanh của họ, thì họ bao ăn-ở-ngủ-nghỉ hết trong hai đến ba ngày, muốn bay hãng nào thì bay, ở khách sạn nào thì ở, muốn ăn chỗ nào thì ăn (trong một giới hạn tương đối dễ dãi). Họ làm việc này qua một bên thứ ba gọi là Concur. Người ứng viên đặt khách sạn ở giao diện của Concur, xong cuối tháng Google trả cho Concur. Tôi nhận được email như sau:

Hóa ra họ tạo cho tôi một tài khoản trước ở Concur.com dưới dạng số-lằng-nhằng@gcandidate.com với một mật khẩu mặc định. Điều tương đối lạ là tên miền này lúc đó chưa được đăng ký. Tôi thấy hơi lạ, nhưng hóa ra đây chỉ là tên tài khoản không có nghĩa gì cả, như kiểu Windows domain. Tài khoản này có một địa chỉ email thật của tôi gắn với nó. Tôi nghĩ mãi nhưng không ra được ý tưởng gì hay ho. Có lẽ tôi đăng ký tên miền để troll ai sắp phỏng vấn với Google cũng nên. Nhưng lúc đó nhà nghèo không có tiền thừa, nên tôi cũng chẳng đăng ký tên miền.
Rồi tôi đi phỏng vấn. Trượt. 
Sau này có một đợt tôi không biết làm gì, nên rỗi việc đi đăng ký cha nó cái tên miền để troll ai vào thử domain đó:
9 đô 84 cent ngon nhất tôi đã tiêu trong đời
Và tôi setup để email nào gửi vào bất cứ địa chỉ nào ở Gcandidate.com đều đến chỗ tôi. Mấy tháng sau tôi nhận được email:

Email gửi đến địa chỉ số-lằng-nhằng@gcandidate.com
Hoá ra khi có người nói "quên mật khẩu," thì Concur sẽ hỏi email ứng với tên tài khoản của họ là gì. Có người nhầm tưởng là hỏi cái số@gcandiate.com là email của họ nên điền vào đấy. Concur mới gửi đến cho tôi bảo là không có tài khoản nào có cái email như vậy cả. Hmmmmm... Tôi bắt đầu hơi nghi, nhưng lúc đó cũng chẳng biết làm gì.
Sau đó mấy tháng lại có email gửi đến phát nữa. Hóa ra thỉnh thoảng lại có một người ứng viên của Google nhầm như vậy.
Tôi bắt đầu rất nghi ngờ là mình có thể làm được trò gì đó với những cái email này.
Nhìn lại mấy email thì tôi thấy số này chỉ lũy tiến. À... tức là số này họ đặt liền một mạch từ số nhỏ đến số lớn, người sau hơn người trước một vài đơn vị.
Số sau tôi nhận được vào ngày 25 tháng 11 là 41536xxxx@gcandidate.com - số trước tôi nhận được vào ngày 29 tháng 9 là 41500xxxx@gcandidate.com. Như vậy trong tháng 10 và 11 số này tăng lên khoảng 300,000 đơn vị. 
Chết dở.
Sau đó tôi nghĩ thêm mình có thể làm được gì với trò này. Ngồi lục lại email cũ thì để ý thêm:
What. The. Fuck?
Hóa ra họ thêm một cái prefix cố định trước cái số dài loằng ngoằng đó, ai cũng thế. Ví dụ, nếu username của bạn là 123456@gcandidate.com thì mật khẩu của bạn là google123456@gcandidate.com.
Cha mẹ ơi! Tức là cấn đề còn lại chỉ là đoán cái số dài loằng ngoằng đó.
Để đoán được cái số dài loằng ngoằng đó rất dễ. Hóa ra Concur lúc đó không hề có CAPTCHA gì cả. Họ code cả cái website đó bằng ASP. Muốn brute force kiểu gì thì brute force. Nhất là khi tôi biết số đó chỉ có lũy tiến và khoảng lũy tiến của số đó, công việc còn dễ hơn nữa. Tôi viết một tiếng thì được một cái script Python đi kiểm tra số tài khoản xem cái nào login được.
Tôi có brute force ra một số tài khoản chưa kịp đổi password:
Oh shitttttt...
Biết được cái số-dài-loằng-ngoằng và miễn là ứng viên chưa kịp đổi password mặc định là có thể vào được tài khoản của họ, muốn xem ai tên gì, phỏng vấn với ai, đặt máy bay khách sạn nào đều được. Thậm chí nếu muốn tôi còn xem được ứng viên ở đâu, số điện thoại thế nào, người yêu người thân khi cần liên lạc ra sao.
Tôi sau đó quyết định có gửi thông báo lỗi này tới Google. Họ trả lời ngay sau vài tiếng và làm việc với tôi ngay lập tức. Sau khi trao đổi 20 email trên hệ thống của họ và đầu tiên họ nghĩ không phải lỗi của mình mà là lỗi của Concur. Nhưng tôi có giải thích thêm, ngay cả Concur có làm CAPTCHA thì tôi chỉ mất thêm thời gian điền CAPTCHA chứ tôi không phải không mò ra được.
Họ cuối cùng chịu và cảm ơn tôi, và trả tiền tượng trưng cho tôi vì tìm ra lỗi này, 500 đô. Sau đó họ có "xin" lại cái domain. Tôi cho họ lại miễn phí.
Bây giờ nếu bạn tra gcandidate.com sẽ thấy Google là chủ đăng ký của domain này.
Sau đó họ có gửi voucher tiền thật. Điều đặc biệt của Google là nếu bạn quyết định tặng số tiền bạn kiếm được cho các tổ chức phi lợi nhuận thì họ sẽ tặng tiếp cho tổ chức đó đúng số tiền mà bạn tặng. Tôi dùng số tiền này để ủng hộ dự án GNU của ông Stallman.
Một vài kinh nghiệm rút ra:
- Những dịch vụ thiết yếu của Google thì có lẽ họ làm rất tốt, nhưng dịch vụ râu ria và dịch vụ cũ của họ thì cũng có rất nhiều cơ hội người bình thường tìm được lỗ hổng bảo mật.
- Để tìm được lỗ hổng bảo mật, bạn không nhất thiết phải hiểu quá nhiều thứ. Điều cốt yếu là chịu khó quan sát.
- Những người làm bảo mật của Google rất tuyệt vời và họ trả lời rất đàng hoàng nếu bạn viết cho họ một cách tử tế.
- Một khi bạn tìm ra những lỗ hổng bảo mật của một công ty lớn hay nhỏ, bạn có hai lựa chọn: Khai thác hoặc hợp tác. Khi bạn hợp tác làm hacker thiện chí, thì tôi mong bạn hãy hành xử như một người đàng hoàng, chơi đẹp, và đừng nghĩ đến tiền lớn nhỏ làm gì. Cái tiền đó bạn quyết định trước khi hợp tác rồi - nếu bạn thật sự muốn làm giàu thì đừng chọn hợp tác. Bạn sẽ luôn nhận được lại nhiều hơn cái bạn cho đi vì những hành động đàng hoàng của mình.
Khoảng mười lăm năm trước khi còn là học sinh cấp hai cấp ba, tôi từng  đi vào những con đường không đàng hoàng. Điều quan trọng tôi nhận ra sau này là mình có thể thắng hàng ngàn những canh bạc nhỏ bằng những mưu vặt. Nhưng cuộc đời thường có nhân quả, cái quả của một hành động đúng đắn lớn sẽ mang lại niềm vui và sự tự tin cho mình mãi về sau này. Và kết quả của một việc lớn bạn hay tôi làm đúng lớn hơn rất nhiều một ngàn những chiến thắng tí tẹo bằng khả năng khôn lỏi lưu manh.
210
5482 lượt xem
210
12
12 bình luận