완료됨
조금만 도와주세요ㅠ
안녕하세요.
문제의 설명대로 풀이를 진행하면서 찾아야할 주소를 추측할 수 있었습니다.
해당 주소에서 srand()를 사용하며 Seed 값으로 0xFFFFFFFF가 들어가는 것을 확인하였습니다.
여기서 Seed 값으로 들어가는 0xFFFFFFFF를 문제에서 말하는 조작된 값으로 추측하여 26회 해킹캠프 날짜로 바꿔주었습니다.
그 후, 아래 코드와 같이 랜덤값과 특정한 값의 xor연산을 통해 바이트 배열을 생성하는 것을 확인하였습니다.
srand(seed);
for(int i = 0; i < 1000; i++)
{
unsigned char R = rand() % 100;
result[i] = (a[R] ^ b[i]) & 0xff;
}
생성된 바이트 배열은 아래 그림(중간 생략)과 같습니다.
여기까지 진행하였으나 더 이상 풀지 못 하고 있습니다...
일단은 지금까지 잘 푼게 맞을 까요?? 맞다면 여기서 무엇을 더 해야 할까요ㅠㅠ??
조금만 힌트 알려주시면 감사하겠습니다!!
#reversing
작성자 정보
답변
1
kimht
공부벌레
계산된 배열이 어떻게 사용되는지를 분석해 보시면 좋을 듯합니다.