文章目錄
- 一、題目
- 二、WriteUp
一、題目
原題連結
二、WriteUp
在輸入數字的時候被限制了數字的長度
使用 burpsuite
進行抓包時,發現沒有抓到包,推測驗證時是在本地驗證的
右鍵頁面先檢視一下源碼
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>随機數字運算驗證碼</title>
<style type="text/css">
.nocode {
display: inline-block;
width: 100px;
height: 25px;
}
.code {
display: inline-block;
color: #ff0000;
font-family: Tahoma, Geneva, sans-serif;
font-style: italic;
font-weight: bold;
text-align: center;
width: 100px;
height: 25px;
line-height: 25px;
cursor: pointer;
border:1px solid #e2b4a2;
background: #e2b4a2;
}
.input {
width: 100px;
}
</style>
</head>
<body>
<span id="code" class="nocode">驗證碼</span> <input type="text" class="input" maxlength="1"/>
<button id="check">驗證</button>
<div style="text-align:center;">
<p>來源:<a href="http://ctf.bugku.com/" target="_blank">BugKu-ctf</a></p>
</div>
</body>
<script src="js/jquery-1.12.3.min.js"></script>
<script type="text/javascript" src="js/code.js"></script>
</html>
其中含有兩個 js
檔案
在檔案中發現了
js/code.js
的資訊
flag
$(function() {
var code = 9999;
function codes(){
var ranColor = '#' + ('00000' + (Math.random() * 0x1000000 << 0).toString(16)).slice(-6); //随機生成顔色
// alert(ranColor)
var ranColor2 = '#' + ('00000' + (Math.random() * 0x1000000 << 0).toString(16)).slice(-6);
var num1 = Math.floor(Math.random() * 100);
var num2 = Math.floor(Math.random() * 100);
code = num1 + num2;
$("#code").html(num1 + "+" + num2 + "=?");
if ($("#code").hasClass("nocode")) {
$("#code").removeClass("nocode");
$("#code").addClass("code");
}
$("#code").css('background',ranColor);
$("#code").css('color',ranColor2);
}
codes()
$("#code").on('click',codes)
$("#check").click(function(){
if ($(".input").val() == code && code != 9999) {
alert("flag{df7efb60253d7edf16f7b61a8f61624a}");
} else {
alert("輸入有誤!");
}
});
});
使用了語句對輸入的值進行判斷,當
if
的值不為
code
且值和輸入的值相同時就會使用
9999
函數跳出彈窗顯示
alert
flag