| View previous topic :: View next topic |
| Author |
Message |
JungMin

Joined: 18 May 2005
|
Posted: Sun Aug 15, 2010 2:48 am Post subject: |
|
|
| tatertot wrote: |
| I think that it might be a simple check that could easily be overridden with a mobile substrate plugin. If you give me the name, I'll download it and see if I can write up the plugin. |
I have the same problem with the Shinhan Bank app. It detects if your phone is jailbroken and won't run if it is. If you are successful with the KEB app, could you give the Shinhan Bank app a go as well???
Cheers |
|
| Back to top |
|
 |
tatertot

Joined: 21 Oct 2008
|
Posted: Sun Aug 22, 2010 3:50 am Post subject: |
|
|
| crossmr wrote: |
| tatertot wrote: |
| crossmr wrote: |
ugh..
this is annoying.
If I jailbreak it.. I can't run my KEB application. It no longer trusts the platform.
So just a heads up if you are using your Korean banks iPhone app you might not be able to use it if you jailbreak it. |
What is the name of the KEB application? I think that it might be a simple check that could easily be overridden with a mobile substrate plugin. If you give me the name, I'll download it and see if I can write up the plugin. |
Just search for "KEB" you should find it. It's got the KEB bank logo on the icon. KEB letters with a blue and red thing that looks like maybe wings or something |
Well, I spent some time trying to reverse engineer the application by disassembling the program and searching for the message that pops up, but that was pretty tough so I gave up really quickly. Then all of a sudden today, I thought of an incredibly easy method of circumventing the check.
What I ended up doing was creating a mobile substrate plugin that hooks all [UIAlertView show] messages in the KEB application (the "pop-up" window is an UIAlertView). If the UIAlertView message is equal to "단말기의 OS변형이 의심되어 프로그램을 실행할 수 없습니다." then the [UIAlertView show] message is spoofed so the pop-up doesn't get called. Since the program exits when you click the "확인" button on the UIAlertView, if the UIAlertView doesn't show, the program doesn't exit.
I tested this on both an iPad running 3.2 and iPhone 3G running OS 4.0.1. It worked on both of those, so I think it shouldn't be any problem on any other iOS device. If you have a problem, let me know.
The instructions for using this are as follows (you must have MobileSubstrate installed, most jailbroken phones and iPads should have this already):
0) Close the KEB program (shouldn't be required, but I had some problems with this)
1) Download the KEBBankSpoofer.dylib here: http://www.mediafire.com/?qml1m1yva8w5ac4
2) Use an SFTP or file manager program to put the file on your phone at /Library/MobileSubstrate/DynamicLibraries
3) Restart the KEB application
That's it. You should be able to use the KEB iPhone application with jailbroken iPhones now. I've included the source below. It's a really simple file.
//
// KEBBankSpoofer.mm
// KEBBankSpoofer
//
// Created by xxxxxxxxx on 8/22/10.
// Copyright self 2010. All rights reserved.
//
// MobileSubstrate, libsubstrate.dylib, and substrate.h are
// created and copyrighted by Jay Freeman a.k.a saurik and
// are protected by various means of open source licensing.
//
// Additional defines courtesy Lance Fetters a.k.a ashikase
//
#include "substrate.h"
#define HOOK(class, name, type, args...) \
static type (*_ ## class ## $ ## name)(class *self, SEL sel, ## args); \
static type $ ## class ## $ ## name(class *self, SEL sel, ## args)
#define CALL_ORIG(class, name, args...) \
_ ## class ## $ ## name(self, sel, ## args)
#pragma mark Hooked UIAlertView
#pragma mark
HOOK(UIAlertView, show, void) {
if (![self.message isEqualToString:@"단말기의 OS변형이 의심되어 프로그램을 실행할 수 없습니다."]) {
CALL_ORIG(UIAlertView, show);
return;
} else {
return;
}
return;
}
#pragma mark dylib initialization and initial hooks
#pragma mark
extern "C" void KEBBankSpooferInitialize() {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
//Check open application and create hooks here:
NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
//This only gets created if the running program is the KEB application
if ([identifier isEqualToString:@"kr.or.kftc.KEB"]) {
Class $UIAlertView = objc_getClass("UIAlertView");
_UIAlertView$show = MSHookMessage($UIAlertView, @selector(show), &$UIAlertView$show);
}
[pool release];
} |
|
| Back to top |
|
 |
tatertot

Joined: 21 Oct 2008
|
Posted: Sun Aug 22, 2010 4:10 am Post subject: |
|
|
| JungMin wrote: |
| tatertot wrote: |
| I think that it might be a simple check that could easily be overridden with a mobile substrate plugin. If you give me the name, I'll download it and see if I can write up the plugin. |
I have the same problem with the Shinhan Bank app. It detects if your phone is jailbroken and won't run if it is. If you are successful with the KEB app, could you give the Shinhan Bank app a go as well???
Cheers |
Well, I just did the Shinhan Bank application the same way. Follow the same instructions as above for KEB, but use the following file:
http://www.mediafire.com/?mse6ge90gsi47ey
edit: including source code (almost exactly the same, but checking for a different string)
//
// ShinhanBankSpoofer.mm
// ShinhanBankSpoofer
//
// Created by xxxxxxxxx on 8/22/10.
// Copyright self 2010. All rights reserved.
//
// MobileSubstrate, libsubstrate.dylib, and substrate.h are
// created and copyrighted by Jay Freeman a.k.a saurik and
// are protected by various means of open source licensing.
//
// Additional defines courtesy Lance Fetters a.k.a ashikase
//
#include "substrate.h"
#define HOOK(class, name, type, args...) \
static type (*_ ## class ## $ ## name)(class *self, SEL sel, ## args); \
static type $ ## class ## $ ## name(class *self, SEL sel, ## args)
#define CALL_ORIG(class, name, args...) \
_ ## class ## $ ## name(self, sel, ## args)
#pragma mark Hooked UIAlertView
#pragma mark
HOOK(UIAlertView, show, void) {
if (![self.message isEqualToString:@"해킹된 아이폰/아이팟에서는 지원되지 않습니다."]) {
CALL_ORIG(UIAlertView, show);
return;
} else {
return;
}
return;
}
#pragma mark dylib initialization and initial hooks
#pragma mark
extern "C" void ShinhanBankSpooferInitialize() {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
//Check open application and create hooks here:
NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
//This only gets created if the running program is the KEB application
if ([identifier isEqualToString:@"com.shinhan.sbank"]) {
Class $UIAlertView = objc_getClass("UIAlertView");
_UIAlertView$show = MSHookMessage($UIAlertView, @selector(show), &$UIAlertView$show);
}
[pool release];
} |
|
| Back to top |
|
 |
crossmr

Joined: 22 Nov 2008 Location: Hwayangdong, Seoul
|
Posted: Sun Aug 22, 2010 4:27 am Post subject: |
|
|
| thanks! I'll try it out as soon as I get the gumption to break it again. |
|
| Back to top |
|
 |
Mr. Pink

Joined: 21 Oct 2003 Location: China
|
Posted: Sun Aug 22, 2010 3:03 pm Post subject: |
|
|
| pkang0202 wrote: |
Anyday now I'm waiting for Apple to update the iPhones "over the air" and brick all the ones that are jailbroken.
Kinda like when Microsoft brings down the Ban hammer on Xbox Live. Or when Blizzard does the same with WoW accounts.
They wait until they get as many people as possible and then drop the hammer at one time.
A lot of people would be pissed, but then again, Apple did make it blatantly clear they don't want people to jailbreak. |
Won't happen as in the US it has been deemed LEGAL to jailbreak the phone. If Apple did such a thing without notice it would totally lose its market. I bet anyone with a brick would never buy another Apple product again.
On another note: I now know why my KB app won't work...my phone is jailbroken. |
|
| Back to top |
|
 |
JungMin

Joined: 18 May 2005
|
Posted: Sun Aug 22, 2010 4:28 pm Post subject: |
|
|
Cheers tatertot. I'll give it a go this evening.
UPDATE: Works perfectly! Thanks mate. |
|
| Back to top |
|
 |
JungMin

Joined: 18 May 2005
|
Posted: Mon Oct 18, 2010 4:08 am Post subject: |
|
|
Tatertot,
Any chance you could work your magic on the Samsung Card app? I get a similar message and then the app quits. |
|
| Back to top |
|
 |
tatertot

Joined: 21 Oct 2008
|
Posted: Mon Oct 18, 2010 5:05 am Post subject: |
|
|
| JungMin wrote: |
Tatertot,
Any chance you could work your magic on the Samsung Card app? I get a similar message and then the app quits. |
Hey, sorry, I've made some changes to my programming setup. Right now I don't have proper tools to make jailbroken apps. Sorry! |
|
| Back to top |
|
 |
JungMin

Joined: 18 May 2005
|
Posted: Mon Oct 18, 2010 5:12 am Post subject: |
|
|
| Ahhh...too bad. Cheers though. Very grateful for the work on the Shinhan app you did! |
|
| Back to top |
|
 |
phatrick
Joined: 18 Apr 2006 Location: Busan
|
Posted: Sun Jul 10, 2011 10:38 pm Post subject: |
|
|
| Tatertot... I tried your mobilesubstrate plugin but it doesn't seem to be working anymore on either iphone/ipad 4.3.3. Maybe it needs a little tweaking? Any chance you can look at it? Thanks! |
|
| Back to top |
|
 |
tegu
Joined: 10 May 2006
|
Posted: Mon Jul 11, 2011 12:12 am Post subject: |
|
|
any hope for kookmin? KB bank? Thanks! |
|
| Back to top |
|
 |
tigershark
Joined: 13 Aug 2009
|
Posted: Mon Jul 11, 2011 5:13 pm Post subject: |
|
|
| +1 for kookmin and maybe nonghyup too??? You're the best!! |
|
| Back to top |
|
 |
jondepoer
Joined: 02 May 2010
|
Posted: Fri Jul 22, 2011 11:00 pm Post subject: |
|
|
Hmmm....looks like KEB has updated their app - it's now "M" banking or something. Anyway, the workaround you provided doesn't seem to work with it. :(
Any chance of an update? |
|
| Back to top |
|
 |
cj1976
Joined: 26 Oct 2005
|
Posted: Sun Aug 21, 2011 1:14 pm Post subject: |
|
|
| I jailbroke my wife's Iphone 3GS using Greenpoison and now she can't use KB banking. Is there any way around this? With Android, you can switch root access on/off very easily, but I can't find a way to do it on the Iphone.. |
|
| Back to top |
|
 |
cj1976
Joined: 26 Oct 2005
|
|
| Back to top |
|
 |
|