풀이
- 브루트포스로 999999 ~ 000000 까지 입력해주면됨. 좀 더 빠르게하려고 연월일의 범위를 제한했음
Exploit
// aaabbb 라는 id를 가진 버튼을 만들어놓음
document.getElementById("aaabbb").addEventListener('click', () => {
const targetFunc = window._0x9a220;
const alertOrigin = window.alert;
window.alert = () => 0;
for(let y=99; y>=0; y--) {
let ys = y.toString().padStart(2,'0');
console.log(`y: ${y}`);
for(let m=1; m<=12; m++) {
let ms = m.toString().padStart(2,'0');
for(let d=1; d<=31; d++) {
let ds = d.toString().padStart(2,'0');
const vv = `${ys}${ms}${ds}`
if(targetFunc(vv)) {
console.log(vv);
window.alert = alertOrigin;
return;
}
}
}
}
window.alert = alertOrigin;
});