Google은 왜 while(1);
(비공개) JSON 응답보다 우선합니까?
예를 들어 Google 캘린더 에서 캘린더를 켜고 끄는 동안의 응답은 다음과 같습니다.
while (1);
[
['u', [
['smsSentFlag', 'false'],
['hideInvitations', 'false'],
['remindOnRespondedEventsOnly', 'true'],
['hideInvitations_remindOnRespondedEventsOnly', 'false_true'],
['Calendar ID stripped for privacy', 'false'],
['smsVerifiedFlag', 'true']
]]
]
나는 이것이 사람들이 그것을하지 못하게하는 것이라고 가정 eval()
하지만, 실제로해야 할 일은while
하고 나서 설정하는 것입니다. 나는 사람들이 안전한 JSON 파싱 코드를 작성하도록하는 것이 평가 방지라고 가정합니다.
나는 이것이 다른 두 곳에서도 사용되는 것을 보았지만 Google (Mail, 캘린더, 연락처 등)에서도 훨씬 더 그렇습니다. 이상하게도 Google 문서 는 &&&START&&&
대신 시작 하고 Google 연락처는로 시작하는 것 같습니다 while(1); &&&START&&&
.
무슨 일이야?
)]}'
대신에 지금 선행 while(1);
합니까? 답이 같을까요?
)]}'
페이스 북처럼 바이트를 저장하는 것일 수도 있습니다 for(;;);
:)
JSON hijacking