Algorithm
2014.07.01 17:55

OCB5 Injection 앗싸뵹! ㅋㅋ

Views 798 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

앗쌰뵹 ㅋㅋㅋ


이렇게 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);
}

?

  1. macOS에 node, npm 설치하기 (homebrew)

  2. Mac에서 Node.js 설치하기

  3. NAT와 DHCP에 대한 간단한 설명

  4. OCB5 Injection 앗싸뵹! ㅋㅋ

  5. OGNL(Object Graph Navigation Language)

  6. OpenGL 강좌 사이트 모음

  7. OpenSSL로 ROOT CA 생성 및 SSL 인증서 발급하기

  8. OPT와 CAS에 대한 자료.. (교수님 메일로 보내드린 자료..)

  9. OSI (Open Systems Interconnection) 개방형 시스템간 상호 접속

  10. php.ini 설정 안됐을때.. ㅋㅋ

  11. Polynomial time 이란? ㅋㅋ

  12. RPA란? 어디에 어떻게 쓰이고 누가 만드나?

  13. RSVP 란?

  14. SQL JOIN 정리 (Inner Join & Outer Join)

  15. SSH Passwordless Login Using SSH Keygen in 5 Easy Steps

  16. SVN 명령어 (SVN command)

Board Pagination Prev 1 2 3 4 5 ... 74 Next
/ 74