Algorithm
2014.07.01 17:55
OCB5 Injection 앗싸뵹! ㅋㅋ
조회 수 956 댓글 0
첨부 '6' |
---|
앗쌰뵹 ㅋㅋㅋ
이렇게 Javascript Injection 으로 점수 조작이 가능하다 ㅋㄷ;
# 인젝션 함수 실행 부분 Example
NSString *prefixUrl1 = @"https://appgame.okcashbag.com/game/2048/"; if([request.URL.absoluteString hasPrefix:prefixUrl1]) { [self performSelector:@selector(doInjection) withObject:nil afterDelay:5.0]; }
# Javascript 인젝션 함수 Example
- (void)doInjection { NSString *buildString = @"game2048_04210214"; NSString *scoreString = @"513842"; NSString *keyString = @"26gameState"; // 초기 값 확인 함 [self viewJson:keyString]; // 스코어 인젝션 NSString *game2048String = [[NSUserDefaults standardUserDefaults] objectForKey:buildString]; if ([game2048String isEqualToString:@"Y"] == NO) { [[NSUserDefaults standardUserDefaults] setObject:@"Y" forKey:buildString]; [self injectScore:scoreString key:keyString]; // 잘 됐는지 확인 함 [self viewJson:keyString]; } } - (void)viewJson:(NSString *)keyString { //NSString *result1 = [NSString stringWithFormat:@"localStorage.getItem('12gameState');"]; NSString *result1 = [NSString stringWithFormat:@"localStorage.getItem('%@');", keyString]; NSString *value1 = [_webView stringByEvaluatingJavaScriptFromString:result1]; NSLog(@"------> value1 : %@", value1); } - (void)injectScore:(NSString *)scoreString key:(NSString *)keyString { //NSString *keyString = @"12gameState"; //NSString *scoreString = @"460182"; //NSString *buildString = @"game2048_1127"; NSString *result0 = [NSString stringWithFormat:@"localStorage.setItem(\"%@\", JSON.stringify({\"grid\":{\"size\":4,\"cells\":[[{\"position\":{\"x\":0,\"y\":0},\"value\":2}, {\"position\":{\"x\":0,\"y\":1},\"value\":1024},{\"position\":{\"x\":0,\"y\":2},\"value\":8192}, {\"position\":{\"x\":0,\"y\":3},\"value\":64}],[{\"position\":{\"x\":1,\"y\":0},\"value\":512}, {\"position\":{\"x\":1,\"y\":1},\"value\":256},{\"position\":{\"x\":1,\"y\":2},\"value\":256}, {\"position\":{\"x\":1,\"y\":3},\"value\":128}],[{\"position\":{\"x\":2,\"y\":0},\"value\":1024}, {\"position\":{\"x\":2,\"y\":1},\"value\":4},{\"position\":{\"x\":2,\"y\":2},\"value\":2}, {\"position\":{\"x\":2,\"y\":3},\"value\":2048}],[{\"position\":{\"x\":3,\"y\":0},\"value\":1024}, null,null,null]]},\"score\":%@,\"over\":false,\"won\":false,\"keepPlaying\":false,\"started\":true}));", keyString, scoreString]; NSString *value0 = [_webView stringByEvaluatingJavaScriptFromString:result0]; NSLog(@"------> value0 : %@", value0); }
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
357 | Database | [mysql] 쓰레드가 계속 쌓이기 시작하고 사라지지 않을때.. | hooni | 2003.04.23 | 12860 |
356 | System/OS | [linux] 콘솔 기본언어 설정 방법 | hooni | 2013.04.23 | 12883 |
355 | System/OS | [linux] ProFTPD 타임아웃 설정 | hooni | 2003.04.23 | 12911 |
354 | System/OS | [sql] 내 방명록 답글 찾는 쿼리문.. (JOIN 구문) | hooni | 2003.04.23 | 12932 |
353 | Develop | [doc] UI개발시 유용한 소프트웨어 (개발 및 디버깅 툴) | hooni | 2013.04.23 | 12935 |
352 | Develop |
[c] 다중연결 서버 만들기 #1 - fork() 사용
![]() |
hooni | 2013.04.23 | 12949 |
351 | System/OS | [linux] 아파치 설치/설정(proxy) | hooni | 2003.04.23 | 13012 |
350 | System/OS | [router] 시스코 라우터 명령어 모드.. | hooni | 2013.04.23 | 13012 |
349 | Develop | [js] 자바스크립트의 클로저 (JavaScript's Closure) | hooni | 2013.05.15 | 13020 |
348 | Develop |
[php] 심플한 게시판 ㅋㅋ
1 ![]() |
hooni | 2013.04.23 | 13048 |
347 | Develop |
[js] AngularJS를 소개합니다.
![]() |
hooni | 2014.01.06 | 13054 |
346 | Develop | [html] 캐쉬된 웹페이지 사용하지 않도록 하는 방법 | hooni | 2003.04.23 | 13071 |