2018-12-26

Tớ đã hack trang SinhVienIT.net như thế nào?

Tớ đã hack trang SinhVienIT.net như thế nào?

Lỗ hổng bảo mật XSS trên sinhvienit.net

Một ngày đẹp trời, tớ lên Google kiếm link tải Visual Studio. Như thường lệ, SVIT (sinhvienit.net) và VNZ (vn-zoom.com) luôn đứng top khi tìm kiếm mấy phần mềm... cr@ck. Khỏi phải suy nghĩ, tớ liền nhấn vào một link có thể tin tưởng (là trang nào thì các bạn cũng biết rồi đấy, liên quan tới bài viết mà).
Vào đọc lướt qua, kéo tới phần tải về. Chợt tớ để ý vào link đầu tiên mà chúng ta có thể nhận ra ngay là một trình chuyển hướng (redirector):

Vốn là tay thích săn lỗ hổng, tớ nghĩ thoáng qua trong đầu... "Không biết lão Lai dùng meta refreshjavascript hay PHP header để chuyển hướng nhỉ?". Nghĩ vậy, tớ liền nhanh tay copy link và thêm "view-source:" vào đầu.

Như vậy là sử dụng JavaScript, phần dữ liệu trên URL được in lại khá nhiều trong trang. Thử kiểm tra XSS xem nào!

Tất cả vị trí đều bị mã hóa ký tự HTML. Thử lại với nháy đơn thôi xem!

Hừm, có vẻ ổn. Một hi vọng lóe lên trong đầu! Tại vị trí này, chúng ta không cần sử dụng thẻ HTML nào vì chúng ta đang ở ngay giữa <script>...</script> (pháo đã lên nòng, chỉ việc châm lửa). Bypass thôi nào!
  • Kết thúc việc gán giá trị vào biến redirUrl: ';
  • Bắt đầu exploit payload của chúng ta: alert('Juno_okyo')
  • Vô hiệu hóa các ký tự thừa bằng chú thích: //
Kết hợp lại tớ được vector XSS như sau: ';alert('Juno_okyo')//
Và kết quả là:

Từ XSS thành CSRF

Vì lỗ hổng XSS này nằm trên trình chuyển hướng liên kết ra ngoài SVIT nhưng link chuyển hướng lại cùng hostname với diễn đàn, tức là khả năng chiếm phiên làm việc hoàn toàn khả thi. Hơn nữa, Security Token của vBB không thay đổi (token không tự tái tạo lại sau mỗi truy vấn mà giữ nguyên trong suốt một phiên làm việc), tớ nghĩ ngay tới khả năng có thể chiếm token để thực hiện mọi thao tác dưới danh nghĩa người dùng bất kỳ => CSRF.

Xây dựng kịch bản tấn công

  1. Tạo một URL chuyển hướng sử dụng DOM để chèn một file JS chứa mã khai thác.
  2. Tạo một trang HTML sử dụng Iframe trỏ tới URL ở bước 1.
  3. Trong file JS ở bước 1, tạo truy vấn tới SVIT để chiếm Security Token và sử dụng token để đăng xuất tài khoản của thành viên đã vô tình truy cập vào trang web ở bước 2.
Nếu bước 3 thành công, chúng ta xác nhận rằng lỗ hổng CSRF tồn tại!

Proof of Concept

Video này tớ sẽ demo lại toàn bộ kịch bản tấn công ở trên. Và với việc tớ quay lại demo thì hẳn các bạn đã đoán ra kết quả của kịch bản này như thế nào rồi đó! :)
Đừng quên đăng ký theo dõi kênh Youtube của tớ để nhận được thông báo mỗi khi có video mới nhé!

Timeline

  • 4:23 PM - 16/07/2016: Lỗ hổng được báo cáo tới quản trị viên.
  • 5:00 PM - 16/07/2016: Quản trị viên Sinhvienit.net xác nhận lỗ hổng tồn tại và đề nghị một khoản tiền thưởng.
  • 5:05 PM - 16/07/2016: Lỗ hổng được khắc phục. Hai bên trao đổi thêm một số thông tin liên quan.
  • Nguồn: https://junookyo.blogspot.com

Share Bộ 200 link contact Facebook, gần như đầy đủ tất cả các link

Share Bộ 200 link contact Facebook, gần như đầy đủ tất cả các link

Share Bộ 200 link contact Facebook, gần như đầy đủ tất cả các link

Link Contact

Báo cáo vấn đề đăng nhập : https://www.facebook.com/help/contact/357439354283890
Xác nhận danh tính của bạn bằng giấy tờ tùy thân : https://www.facebook.com/help/contact/319547548123767
Đã bị vô hiệu hóa - Không đủ điều kiện : https://www.facebook.com/help/contact/317389574998690
Confirm Your Identity With Facebook : https://www.facebook.com/help/contact/183000765122339
Tài khoản cá nhân của tôi đã bị vô hiệu hóa : https://www.facebook.com/help/contact/260749603972907
Báo cáo vấn đề về việc xác nhận tài khoản Facebook : https://www.facebook.com/help/contact/174964429275926
Báo cáo vấn đề về xác minh tài khoản : https://www.facebook.com/help/contact/283958118330524
Data Policy Questions : https://www.facebook.com/help/contact/1461223320847982
Vấn đề về mã Phê duyệt đăng nhập : https://www.facebook.com/help/contact/259497704121855
California's Shine the Light law : https://www.facebook.com/help/contact/1647869505427057
Data Policy Questions : https://www.facebook.com/help/contact/861937627253138
THAY TÊN CHUẨN, ĐỔI TÊN : https://www.facebook.com/help/contact/1417759018475333 
Cung cấp cho chúng tôi phản hồi về tính năng Facebook : https://www.facebook.com/help/contact/268228883256323
Báo cáo vấn đề về Trang Facebook : https://www.facebook.com/help/contact/?id=164405897002583
Báo cáo Vi Phạm hoặc Xâm Phạm Quyền Của Bạn : https://www.facebook.com/help/contact/?id=208282075858952
Report Pages that Disappeared : https://www.facebook.com/help/contact/?id=167646843343666
Report an Ad : https://www.facebook.com/help/contact/?id=234887816572954
Bank Account Payments : https://www.facebook.com/help/contact/281141591936826
Disabled Ad Account Help : https://www.facebook.com/help/contact/531795380173090
Truy vấn về Thanh toán Quảng cáo : https://www.facebook.com/help/contact/239064626155650
Nhận hỗ trợ về thanh toán trên Facebook : https://www.facebook.com/help/contact/830921593618796
Facebook Payments Support Center - Enter : https://www.facebook.com/help/contact/137574362977954
Give feedback or report that something is broken: Photos : https://www.facebook.com/help/contact/?id=138856662881439
Report an Issue with Disappearing Videos : https://www.facebook.com/help/contact/?id=333113853388695
Report an Issue with Chat Disconnections : https://www.facebook.com/help/contact/?id=220877088001498
Report an Issue with Search : https://www.facebook.com/help/contact/?id=137406866379070
Report an Issue with Notifications : https://www.facebook.com/help/contact/?id=269067606491964
Báo cáo vi phạm quyền riêng tư : https://www.facebook.com/help/contact/144059062408922
Báo cáo lỗ hổng bảo mật : https://www.facebook.com/whitehat/report/
Yêu cầu xóa tài khoản cho ai đó bị ốm, bị thương hoặc mất khả năng : https://www.facebook.com/help/contact/191122007680088
Privacy Rights - Video Removal Request : https://www.facebook.com/help/contact/139646232852264
Report an Issue with Facebook on Mobile : https://www.facebook.com/help/contact/?id=110188012426789
Report an Unavailable Group or Event : https://www.facebook.com/help/contact/?id=157461604368161
Gọi điện tới Facebook theo số: (1) 1-800-694-2600 hoặc 1-800-601-0077
Yêu cầu thay đổi ngày sinh : https://www.facebook.com/help/contact/233841356784195
Hợp nhất các trang trùng lặp : https://www.facebook.com/pages/merge/
Phản hồi của bạn về trang : https://www.facebook.com/help/contact/306836472662147
Mentions Verification Request : https://www.facebook.com/help/contact/1491114197882751
Báo cáo tài khoản giả mạo : https://www.facebook.com/help/contact/295309487309948
Yêu cầu tưởng nhớ : https://www.facebook.com/help/contact/1605213279719667
Mẫu báo cáo bản quyền : https://www.facebook.com/help/contact/1409697672616547
Báo cáo một sự vi phạm Điều khoản Facebook : https://www.facebook.com/help/contact/191381691012854
Must Log In To See This Page Error : https://www.facebook.com/help/contact/290391837683878
Invalid Email Address Error : https://www.facebook.com/help/contact/340846992655773
Vấn đề về SMS (Tin nhắn văn bản) chứa mã xác nhận : https://www.facebook.com/help/contact/?id=338822979524831
Báo cáo vấn đề về xác minh tài khoản : https://www.facebook.com/help/contact/?id=283958118330524
Page Promotion Help : https://www.facebook.com/help/contact/175415912598628?_rdr=p
Kháng nghị quảng cáo không được phê duyệt : https://www.inyour.facebook.com/help/contact/1582364792025146
Report an Underage Child (South Korea & Spain) : https://www.facebook.com/help/contact/1408156889442791
Report Content Lost During Reactivation : https://www.facebook.com/help/contact/270321339699849
https://www.facebook.com/help/contact/304635099583936 : Report an Issue with Webcam Videos on Facebook
https://www.facebook.com/help/contact/167024990072620 : Report an Issue with Video Playback
Chat Appears Turned Off for Friends : https://www.facebook.com/help/contact/240186386056090
Report a Page Unavailable Error : https://www.facebook.com/help/contact/357161520978587
Your Feedback About Places : https://www.facebook.com/help/contact/347276355296268
https://www.facebook.com/help/contact/232989770111862 << Impressum Contact
https://www.facebook.com/help/contact/174964429275926 << Báo cáo vấn đề về việc xác nhận tài khoản Facebook (*)
https://www.facebook.com/help/contact/237843336274237 << Tên không được chấp nhận
https://www.facebook.com/help/contact/317389574998690 << Disabled – Ineligible
https://www.facebook.com/help/contact/183190208381429 << Xác nhận lại thông tin cá nhân của bạn
https://www.facebook.com/help/contact/197295393639994 << Xác minh tên của bạn
https://www.facebook.com/help/contact/319547548123767?rdrhc << Xác minh danh tính bằng giấy tờ tùy thân
https://www.facebook.com/help/contact/222853911135005
https://www.facebook.com/help/contact/199052956872279
Xác minh tên https://www.facebook.com/help/contact/197295393639994
Đổi tên https://www.facebook.com/help/contact/245617802141709 
report bệnh tật https://www.facebook.com/help/contact/191122007680088
report die https://www.facebook.com/help/contact/1465699090320797
report sex https://www.facebook.com/help/contact/207005222725325
xác nhận danh tính khi bị check ảnh hoặc bắt up cmnd
https://www.facebook.com/help/contact/319547548123767
dành cho không thể đăng nhập được tài khoản do đăng nhập từ xa .mã code đt...( mấy bé check acc nên xài )
https://www.facebook.com/help/contact/logout…
xác nhận thông tin cá nhân
https://www.facebook.com/help/contact/183190208381429
block do không đủ tiêu chuẩn sd fb
https://www.facebook.com/help/contact/317389574998690
block do ăn vé tên giả
https://www.facebook.com/help/contact/237843336274237
verify lại account
https://www.facebook.com/help/contact/174964429275926
đổi ngày sinh : https://www.facebook.com/help/contact/233841356784195

https://www.postplanner.com/how-to-contact-facebook-to-get-support/ ( 120 link trong đây )