Web09, web10 are open now ! ???

rivertree

Member
21/06/2018
2
13 bài viết
Web09, web10 are open now ! ???
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Chào bạn,
Theo mình thấy <!--index.php~--> là ý chỉ đến việc tìm kiếm file backup của trang web, mà file backup thì có thể có nhiều dạng đuôi khác nhau, chứ không phải chỉ có dạng ".php~".
Ở đây bạn nên lần lượt thử với các dạng đuôi file backup khác, mình đã thử và giải được bài này bình thường.
Chúc bạn chơi CTF vui vẻ.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  • Thích
Reactions: rivertree and whf
Comment
@sunny Em viết tiếp writeup:

đề troll ác quá nà luôn,
từ <!--index.php~-->
phải mò ra file backup khác là .bak mà ko có một manh mối nào: là index.php.bak, lược bỏ phần html:
<?php
function random()
{
return rand(1000,10000)*45;
}
require_once "secret.php";
if (isset($_POST['user']) && isset($_POST['passwd'])) {
$user = $_POST['user'].random();
$passwd = sha1($_POST['passwd']);
if($user == $passwd) {
print "Well done! Here is your flag: ".$flag;
}
else {
print "Login failed!!!";
}
}
?>

đến đây thì dễ quá rồi phải hông?
Gợi ý tìm hiểu sự khác nhau giữa các operator này trong php "==" vs "==="

Sẽ không spoil thêm.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
@sunny Em viết tiếp writeup:

đề troll ác quá nà luôn,
từ <!--index.php~-->
phải mò ra file backup khác là .bak mà ko có một manh mối nào: là index.php.bak, lược bỏ phần html:
<?php
function random()
{
return rand(1000,10000)*45;
}
require_once "secret.php";
if (isset($_POST['user']) && isset($_POST['passwd'])) {
$user = $_POST['user'].random();
$passwd = sha1($_POST['passwd']);
if($user == $passwd) {
print "Well done! Here is your flag: ".$flag;
}
else {
print "Login failed!!!";
}
}
?>

đến đây thì dễ quá rồi phải hông?
Gợi ý tìm hiểu sự khác nhau giữa các operator này trong php "==" vs "==="

Sẽ không spoil thêm.
Nếu bạn để ý kỹ thì gợi ý index.php~ thì việc nghĩ ngay đến file backup đầu tiên, và việc tìm kiếm các file backup cũng rất đơn giản không phải ngồi đoán. Vì hiện nay rất có nhiều tools để làm việc đó nên bạn có thể dùng tools sẽ rất dễ để lấy được file backup .bak.Đối với các bài CTF các tác giả nhiều khi sẽ cố tình để lại file backup, hoặc folder trên hệ thống mà không thông báo với người chơi vì kỹ thuật Brute Force tìm thư mục và file ẩn hiện nay rất phổ biển và có thể tự việt tools để thực hiện hoặc dùng các tools có sẵn. Tuy nhiên để tránh các bạn về sau hiểu nhầm không đáng muốn mình đã sửa lại phần comment trong trang web. Bạn cỏ thể tham khảo tools sau:
https://github.com/maurosoria/dirsearch
 
Chỉnh sửa lần cuối:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Nếu bạn để ý kỹ thì gợi ý index.php~ thì việc nghĩ ngay đến file backup đầu tiên, và việc tìm kiếm các file backup cũng rất đơn giản không phải ngồi đoán. Vì hiện nay rất có nhiều tools để làm việc đó nên bạn có thể dùng tools sẽ rất dễ để lấy được file backup .bak.Đối với các bài CTF các tác giả nhiều khi sẽ cố tình để lại file backup, hoặc folder trên hệ thống mà không thông báo với người chơi vì kỹ thuật Brute Force tìm thư mục và file ẩn hiện nay rất phổ biển và có thể tự việt tools để thực hiện hoặc dùng các tools có sẵn. Tuy nhiên để tránh các bạn về sau hiểu nhầm không đáng muốn mình đã sửa lại phần comment trong trang web. Bạn cỏ thể tham khảo tools sau:
https://github.com/maurosoria/dirsearch
Văn vở quá nhỉ!

Phần đoán ra tên backup .bak chỉ chiếm rất nhỏ trong bài web này: 1% , mình cũng tin rằng 1% này không chủ đích để dậy
newbie. Không ai đi dậy newbie làm bruteforce. Bruteforce là điều cấm kị trong hầu hết CTF, có khi còn bị ban.

Còn lại 99% phần chính của bài web.
Có vẻ như là người ra đề đang không hiểu web lắm.

Câu hỏi đặt ra:
Bài web này là đi lấy của người khác (cuộc thi khác) ghi là chall của mình rồi Contribute [1] để kiếm tiền?
Mang tiếng WhiteHat wargame đi "ăn cắp" chall chỗ khác mà không ghi nguồn!

Mình sẽ tùy thuộc vào thái độ và câu trả lời của bạn và ReUTD, sẽ tiếp tục bóc phốt hay là không.


[1] https://wargame.whitehat.vn/Contribute
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Văn vở quá nhỉ!

Phần đoán ra tên backup .bak chỉ chiếm rất nhỏ trong bài web này: 1% , mình cũng tin rằng 1% này không chủ đích để dậy
newbie. Không ai đi dậy newbie làm bruteforce. Bruteforce là điều cấm kị trong hầu hết CTF, có khi còn bị ban.

Còn lại 99% phần chính của bài web.
Có vẻ như là người ra đề đang không hiểu web lắm.

Câu hỏi đặt ra:
Bài web này là đi lấy của người khác (cuộc thi khác) ghi là chall của mình rồi Contribute [1] để kiếm tiền?
Mang tiếng WhiteHat wargame đi "ăn cắp" chall chỗ khác mà không ghi nguồn!

Mình sẽ tùy thuộc vào thái độ và câu trả lời của bạn và ReUTD, sẽ tiếp tục bóc phốt hay là không.


[1] https://wargame.whitehat.vn/Contribute
Mình không biết bạn chơi mấy giải CTF rồi mà bảo thế ??? Trong các giải mình chơi thì việc tìm file lạ trên server đó là việc đầu tiền mình làm trước khi làm 1 bài web. Đây là bước đầu thu thập thông tin và nó không chỉ chiếm 1% đâu nhé, bước này quan trọng ảnh hưởng đến các bước khai thác web sau này. Và mình cố tình để thế để các bạn chơi khác biết đến kỹ thuật tìm các file lạ. Với tinh thần chung của giải đối tượng mình hướng đến là newber không phải pro.Kỹ thuật này là kỹ thuật phổ biến nên có thể bạn sẽ gặp nó ở đâu đó nên sẽ có cảm giác gần giống với các challenge khác. Mình sẽ không đôi co trong trường hợp này nữa. Mình nghĩ nếu bạn có tinh thần đóng góp thế BTC sẽ rất hoan nghênh khi bạn đóng góp những đề hay cho mọi người cùng chơi.Mình thấy thành tích của bạn khá tốt trên wargame nên hoan nghênh bạn đóng góp các đề cho cộng đồng whitehat
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
$user = $_POST['user'].random();
$passwd = sha1($_POST['passwd']);
if($user == $passwd) {
print "Well done! Here is your flag: ".$flag;
}
a cho em hỏi chỗ biến user mình lấy từ hàm random v mỗi lần nhập sao biết là số nào để so sánh được ?
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
a cho em hỏi chỗ biến user mình lấy từ hàm random v mỗi lần nhập sao biết là số nào để so sánh được ?
Bạn chú ý đến tên đề bài là php type jugging. Ở chỗ so sánh đăng nhập là dùng dấu "==" chứ không phải "===". Bạn dùng từ khóa đề bài gợi ý để tìm hiểu về kỹ thuật tấn công này sẽ ra thôi
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Bên trên