Doing this much to prevent debugging is like hanging up a giant warning sign saying "I AM BEING SUSPICIOUS"
@Toad-k7e5 күн бұрын
or its anticheat?
@SeprexOG4 күн бұрын
@@Toad-k7eye
@taktuscat42503 күн бұрын
@@Toad-k7e its not even a game
@Toad-k7e2 күн бұрын
@ no one said it was.
@Toad-k7e2 күн бұрын
@ it could also be DRM to prevent cracking
@wardyorgason11 күн бұрын
now I want to know the conspiracy behind having all of these protections
@misternachname51711 күн бұрын
prob just cracking protection
@dahahaka11 күн бұрын
@@misternachname517 either that or they're doing something shady
@Y3ee11 күн бұрын
you should check out the app's privacy policy, it's actually so stupid, how much stuff they collect. Them trying to hide from debuggers, jailbroken phones etc. just makes it so much scarier.
@lbgstzockt849310 күн бұрын
The "conspiracy" is that they spy on you every waking moment and sell the data to anyone who is willing to pay.
@nmslesecnmbese91710 күн бұрын
The UI looks like a typical chinese app, so what's the expectation?
@henningerhenningstone6917 күн бұрын
"Debugging An Undebuggable App" sounds like my day-job, except I wrote the app 😅
@Joh4475 күн бұрын
"what sort of lunatic moron coded this piece of sh- oh... That would be me"
@kali_chai3 күн бұрын
"I love writing code, I love testing code, and I really love developing code" -No CSC/CPE worker ever
@FancyPotatOS7 күн бұрын
The usage of the snapshot call until it crashes is HILARIOUS and feels so ‘junior dev knows a security hack’. Even seeing the ‘while(1)’ is such an indication that something silly is occurring in code
@NSXPCConnection12 күн бұрын
10:37 that someone who found the method by the way is Amelia While, really smart person! She found it in iOS ~13 or 15 I don’t remember but it STILL hasn’t been patched
@brycedotco12 күн бұрын
Ha!! I looked around a bit but could not find the history here - best I could find (after recording/editing) was that TrollLock-Reborn uses this to back its respring functionality. Can't believe it's been around that long. This is awesome, thanks for sharing!
@ramsey215511 күн бұрын
At that point its just malicious behaviour. That app should not even be allowed to be deployed
@llsc12dev11 күн бұрын
@@brycedotcounfortunately amy’s method stopped working in the developer betas of ios 18. its funny that it took so long for apple to decide to fix lol
@nono127111 күн бұрын
Name looked suspicious, searched it and just found a white male whom people call something he's not and never will be 😑
@NoTraceOfSense10 күн бұрын
omg my oomf in the wild
@encodedlife11 күн бұрын
Dude that level of mastery in reverse engineering is impressive!
@ne.uveren7 күн бұрын
This is a good example of the main rule of cyber security: doesn't matter how protected you are, if someone really wants to get in, they will find a way. The only question is, how long can you stall them for
@ДаниилРабинович-б9п5 күн бұрын
It's sometimes possible to make things that you run impervious to outside connections, but the moment a thing is running on the client side, you might as well assume the client has full control.
@ggsap5 күн бұрын
this only applies for client side
@Architector_43 күн бұрын
@@ggsap I mean, theoretically of course, but a determined enough adversary could physically break into your server room and make your server software clientside to them too lol
@tbuk83502 күн бұрын
This. The most important thing when developing an app (that you want to keep secure), is that you can NEVER trust the client. No amount of signing, checksums, obfuscation, etc. can protect a client-side program from someone who is determined enough. All you can do is slow them down. The only thing you as a developer can ever trust is your own hardware, which is usually the server. Write your networked programs so that the server validates EVERY action, and denies any request from the client that is out of its bounds. Then you leave blindly attacking the server and trying to find vulnerabilities in private code as the only option for the attacker, which is 1000x more difficult than hacking client-side code, which can be debugged, reverse-engineered, etc.
@tarosykes2 күн бұрын
@@Architector_4oh hey architector :)
@williamkaiser607511 күн бұрын
The streisand effect, but for protecting your app binaries
@slime_stick6 күн бұрын
Just learned a new word 😮
@noewaeda18 сағат бұрын
"protecting" your app binaries is already a bad idea to begin with
@john.dough.10 күн бұрын
woah! as someone used to Linux reverse engineering with Ghidra, it's wild how many things are so similar yet so different! thanks for sharing :0
@tijtij11 күн бұрын
Got this video suggested by the algorithm and I am happy I clicked on it. The concepts are explained very clearly. I know very little about assembly but had no trouble following along. Instant subscribe.
@VerifyBot11 күн бұрын
This was such a joy to watch! The way you explain everything calmly and enthusiastically is genuinly so charming Keep up with this!
@tdrg_11 күн бұрын
It’s incredible how I can understand 10% of what you’re doing and still enjoy it so much Thanks for the video!
@pantherosgaming19957 күн бұрын
That method of torpedo-ing the phone memory can actually be considered malicious.
@SeizureSalad5 күн бұрын
i've never seen reverse engineering explained in such an easy to understand and digest way. I've been trying to teach myself intel x86 assembly and IDA for some time now but still haven't gotten the hang of it and don't know where to start but this was really interesting to watch
@brycedotco5 күн бұрын
It takes awhile - I'm definitely still learning too. Keep at it!
@flameddogo11 күн бұрын
"Feed two birds with one scone" is hilarious
@jackedakk11 күн бұрын
the efficient pacifist
@lbgstzockt849310 күн бұрын
PETA approved
@vertexstuff10 күн бұрын
I was not ready for that lolll
@NithinJune9 күн бұрын
i’m pretty sure PETA came up with this 😭
@nuvotion-live5 күн бұрын
Much nicer :)
@ResizePixel11 күн бұрын
This is so fun to watch as a much higher level programming language developer. I love seeing these concepts and watching you step through assembly. It makes me want to challenge myself to learn more!
@lampree9 күн бұрын
I think the most impressive part of your videos isn’t even your reverse engineering skills (which are great) but your ability to explain a complex subject and keep anyone interested. That is talent!
@nagyszabolcs945111 күн бұрын
I don't really have experience with ios specifically, but your explanations make this so watchable, can't wait for part 2!
@Mabeloid11 күн бұрын
i know nothing about this debugging area of programming and i have to let you know how clear and good all your explanations are that nothing went over my head
@voilin10 күн бұрын
I'm not an apple dev, but your presentation was so good I decided to stay anyway, that was masterful!
@TheOliveOli386 күн бұрын
Ngl blocking debuggers and having jailbreak protection is something I'd expect from stuff like Mario Kart Tour (which does have those protection measures because of anti-cheat, which is also the same reason why it's online-only) but a widget app? Are the devs really that greedy for ad revenue? (Which I'm guessing is the main reason why they did all of that; they don't want people bypassing ads or cracking IAPs)
@codewithkanishk75006 күн бұрын
Perfectly explained, Person like me who had never written Objective C or never done any IOS development can easily understand how things are working, Thanks man your teaching skills are absolutely phenomenal.
@_opa33411 күн бұрын
But I thought the App Store was secure and Apple manually verifies all submissions to not be malicious??? Was my life a lie??? 😢😢😢 /s
@qwfp11 күн бұрын
There is no malicious apps in the App Store. 😃
@brycedotco11 күн бұрын
this is totally the only one, probably, i swear
@user-lj4lo7cx7m10 күн бұрын
As a developer in a big company here at US: No. They don't verify deeply our app, and it usually takes a few hours to get approved
@sorae4210 күн бұрын
Most of the software storefronts only do deep analysis on the softwares first submission. Later updates are usually quickly skimmed thru so they can get the new version up and running asap.
@thewhitefalcon853910 күн бұрын
They are verifying their financial security, not your computer security.
@DarrenJohn10X6 күн бұрын
I don't ever code in assembly, and I don't have or use any Apple products. But I watched this entire video. You are excellent at explaining every step. 👏
@TechX13202 күн бұрын
I cannot stand Root detection/Jailbreak detection. It all started with people thinking "Oh, cheaters root/jailbreak" when you don't even need to. You can mod the app and sideload. On iOS, yes, this is far more difficult than android, but still possible.
@gnorts_mr_alien9 сағат бұрын
you are an amazing communicator. think your channel will go very far.
@yassine-sa8 күн бұрын
18:12 God, he's literally about to collapse and start crying 😂😂😂
@oskarristolang10 күн бұрын
absolutely love your videos, they're so complex but yet so simple
@Flor-ian11 күн бұрын
The dedication to recording the video twice is insane. Love the content and happy to see a new upload!
@rosawatson681310 күн бұрын
Amazing production quality! Absolutely love it. My experience goes as far as "doing random stuff with frida". Learned quite a bit from this.
@DaxSudo10 күн бұрын
This is the most underrated channel I have ever seen and I love it. Everything you’re doing I’m on the exact opposite side of that react native, native development, web development API’s, edge services. Full stack and u hack it I love it so much.
@abdallaaltaay448712 күн бұрын
Is there a similar channel that does the same thing but android
@brycedotco11 күн бұрын
(watching this thread so that if anybody has any recommendations, I can learn too, ty)
@bity-bite11 күн бұрын
Closest I can think of is LauireWired
@asdhuman11 күн бұрын
also you can apply a lot of this knowledge to android too
@FaizanAli-visiontech11 күн бұрын
@@brycedotcoMe too
@reabstraction11 күн бұрын
@@brycedotco There is something called ReVanced if you want to patch apps yourself Its a plugin patcher for Android Most known for patching KZbin It can patch any app Unless it uses Play Integrity API In which case that will need to be patched out using microG as a replacement As Play Integrity API requires code signing
@alvinjoycharles691411 күн бұрын
My absolute favourite channel on yt. Please keep making this kind of content!!
@Daniel15au10 күн бұрын
I don't own any Apple devices (neither does anyone in my family) and have never written code for iOS, but I still enjoyed this video. Nice work!
@gFamWeb11 күн бұрын
As a security researcher, this video is so incredibly fascinating and also extremely helpful for whenever I need to use `lldb`.
@Observer5525 күн бұрын
Is every app open-source for you? Great video, and I was feeling sad for recording the video twice
@yassine-sa8 күн бұрын
Bro I can't imagine how hard learning all of this must have been, this is so frkn awesomme
@kwiky56437 күн бұрын
not really given how interesting it is. It's not "basic knowledge", but it's not like it's obscure stuff either if you're an iOS dev
@yassine-sa7 күн бұрын
@kwiky5643 yes I agree, I'm not an IOS dev( I'm not in the apple ecosystem) and i can see what you mean, but still what he did is so cool I wanna try ios dev as soon as i get an apple computer and i have time
@yandevelop11 күн бұрын
Really great video! I'm glad that I found your channel. I'm a tweak developer for jailbreaks myself so this is very interesting to see! Good job :)
@appelveg12 күн бұрын
Very in depth! Love your explanations, you were literally explaining as I was figuring out! And the app is SOOOO sketchy :)
@rugmj11 күн бұрын
Really enjoy seeing your videos, I learn something which helps me write tweaks every time :)
@bocchertherock6 күн бұрын
The single apostrophe after the app name label is just enough to classify this app as suspicious. General rule of thumb: If a program/app name uses non-alphanumeric characters in weird places, that's one red flag.
@eastarctica51311 күн бұрын
This video is actually amazing! It goes over tons of the things I’ve had trouble with when dabbling in iOS reversing. I’ll have to look into those group identifiers a bit more though to learn how they actually work
@developertpl7 күн бұрын
I really enjoy your content and the way you explain complex iOS features. It would be really nice to be able to watch you building an application, either as a series or a live coding session.
@brycedotco6 күн бұрын
I appreciate that! I've never been sure if building a normal thing would be super interesting to people - this gives me some motivation. Thanks!
@jirehla-ab16716 күн бұрын
How abt disassembly (viewing assembly code) instead of debugging, would the steps be different? @@brycedotco Same platform IOS
@ggsap5 күн бұрын
@@brycedotco It probably won't but this reverse engineering format is quite intresting!
@ahmetdenizsezgin9 күн бұрын
3:03 No you’re not best sentence i have ever heard this year about coding
@SimSel028 күн бұрын
I love your videos and you have very impressive skills (I really enjoy how you explain)! Keep it up! I’d also like to see videos published more often
@nobodyknows-vk3iv19 сағат бұрын
it's a crime for this video not go viral
@mikaay42699 күн бұрын
I've never had any apple device and probably never will, but this content is still really interesting. Keep it up!
@cihadturhan9 күн бұрын
Great job man! I love your videos. It's full of information and I still understand it even if I have very limited ios dev experience. Now, when I think about how I can protect my app from hackers, there is literally no way I can think of
@boomanten102011 күн бұрын
I havent done any iOS reversing, but you have such a good way of explaining things that help me outside of the Apple environment. Also like how iOS manual pages mention the BSD System Call
@seekyboi236 күн бұрын
Because macOS and iOS are forks of FreeBSD
@dahahaka11 күн бұрын
The snapshot loop is kinda hilarious
@jondycz7 күн бұрын
Now try McDonald's app
@iskamag10 күн бұрын
Jailbreak "protection" is so annoying. It often triggers when jailbreak's inactive too. Just let me use my phone how I want damnit!
@arjundureja11 күн бұрын
Can't wait for the next video. Need to know why this app has so many protections
@tokero519912 күн бұрын
Great video! I was sure you were going to to patch the bin with a noop or something but setting a break on the mem address was clever.
@NithinJune9 күн бұрын
13:05 oh god if you weren’t sure that you don’t want this app anywhere near your phone, that temu app layout seals the deal
@TheOnlyASDK9 күн бұрын
it reminds me of the OPPO Theme Store, the UI design is very similar
@NithinJune8 күн бұрын
@ i think it’s a chinese design language. if you look at chinese websites and apps, we would probably consider them cluttered and trashy
@TheOnlyASDK4 күн бұрын
@@NithinJune True, they have very information dense design principles
@VanillaSpooks6 күн бұрын
Feed two birds with one scone??? The birds will now battle over the scone
@dewantawsif10 күн бұрын
So I had seen your very first video and after a year KZbin recommends this one. Subscribed so I can get more on my feed.
@etino11 күн бұрын
Your channel is golden. Respect man! Keep it up :)
@MrRonanX11 күн бұрын
This channel is a hidden gem of the iOS Engineering!
@seansingh44219 күн бұрын
Check for canaries as well. A lot of softwares have reverse engineering/debugging canaries that only activate when you analyze them
@camillelouedoc37994 күн бұрын
I finally found the perfect KZbin channel for my lunch break 🍻
@moohric9 күн бұрын
Man, this is entertaining to watch during lunch :D
@thundertastic89611 күн бұрын
Dude, you're doing stuff with the debugger that I thought were not possible, would you be down to make a video about common and not so common tricks to debug applications? In this age of printf debugging nobody really praises the abilities of the debugger.
@Kaleb_Weise9 күн бұрын
Thanks for taking us through the journey! 🥂
@henriquematias198610 күн бұрын
Super cool video dude! What else did you find inside that was suspicious 😂
@elmigranto10 күн бұрын
Extremely well-done and explained. I am beyond impressed! 💯
@0xbitbybit3 күн бұрын
You know someone knows what they're talking about when they can afford/use IDA Pro 😂Awesome video and I haven't even done anything to do with iOS!
@ItsD3vil10 күн бұрын
You are a gem man love your content so much keep it up!
@pilothyper3 күн бұрын
I barely even know how to style text in CSS, so this stuff is a whole new realm for me dang xD
@joshynoshy11 күн бұрын
I NEED to know why. WHYYYY? Why did they make the app so scared of debugger?
@TheOisannNetwork11 күн бұрын
In general: It's about regulation, fraud prevention, anti-cheating and IP protection. I'm sure there are other reasons too, but those are for sure the main ones.
@LetrixAR10 күн бұрын
The app has in-app purchases
@IrtyGo5605 күн бұрын
1) this app is chinese 2) money can change hands in this app
@lekeshala37359 күн бұрын
I really enjoyed this video, showed me how much I didn't know about reverse engineering, good job.
@LeonOF-i3f11 күн бұрын
bro is the goat we all needed
@TimTheBeastNL6 күн бұрын
love the vids, would love to see a more detailed video or blog about FLEX. Would be cool to fully understand how to install and use it.
@NerdOfComputers5 күн бұрын
this mustve take long to edit but worth it!
@snowyy3049 күн бұрын
You're a legend, my dude! Your reverse engineering is impressive as hell 🔥🔥🔥
@asandax68 күн бұрын
It seems if you make an app harder to crack Hackers just get motivated to crack it even more.
@lukasjetu97765 күн бұрын
I like how the word 'ptrace' in the captions is more and more b`ro`ke`n
@lukasjetu97765 күн бұрын
nevermind, ignore this
@jannikheidemann38052 күн бұрын
Peat race
@danmorgan7129 күн бұрын
As someone that loathes Apple and avoids their products like the plague, I still found this to just be an interesting video and found myself watching the entire thing and wanting more. Nice presentation.
@worldgeektube10 күн бұрын
First class. Great analysis. No fluff.
@RobertNMusic7 күн бұрын
Love the video and great explanation! Would like to have more horizontal space on your windows though 😬 Could have XCode or disassembler top of screen and terminal bottom so that both get more width
@Visitor______________________v5 күн бұрын
So much skill here, very interesting
@APerson-14Күн бұрын
gotta love apple allowing malaware yet can't allow 3rd party app stores
@nirusplex9 күн бұрын
Its a piece of art. Loved it.
@distortions10 күн бұрын
This is a cool series.
@Alcaline-hu2vu7 күн бұрын
They say everything is open source if you know assembly
@JZL00310 күн бұрын
I just enjoy watching this, but there's so many helpful tips! I know it's maybe between 'purely educational' and 'live coding' but I think collating some of your tips into the description could be a nice summary for people who were actually learning and going to use
@MarioMakesSftwr11 күн бұрын
amazing content as always!
@BitZorg10 күн бұрын
I haven't tried this, but I'm pretty sure ghidra can connect to a LLDB server and you can debug it that way. Might be nice for ant longer debugging sessions.
@RandomGeometryDashStuff11 күн бұрын
04:36 do ios syscall numbers not change with kernel versions like linux?
@bm125910 күн бұрын
thats probably normal behaviour for operating systems but ofc windows just has to be different
@Dorumin10 күн бұрын
@@bm1259 You'd think it's more of a problem than it really is. If Linux syscalls were so simple, there would be more Golangs that use it directly instead of libcs and musls :)
@jeffsmithdawg12 күн бұрын
Dude you’re like god level at reverse engineering. Did you ever create a jailbreak?
@tomtravis85811 күн бұрын
I wouldn't imagine so, it's a very different field of reverse engineering.
@brycedotco11 күн бұрын
Yea, I wish! I'm an app dev who dabbles in reverse engineering, not a reverse engineer who dabbles in app dev, unfortunately 😅
@jeffsmithdawg11 күн бұрын
@ you definitely have what it takes
@super_loaf24 күн бұрын
my cat is currently watching this video with me
@doshantgiradkar530712 күн бұрын
Loved your videos ❤️❤️, can you make them more frequently, like once a month if not week. And can you please also expand a little bit over to android side of things?
@brycedotco11 күн бұрын
Thank you!! I'm trying to make more of them this year! I have about zero expertise on the android side though - I want to learn, but we're probably a ways away from anything fun there!
@neutrino2211_11 күн бұрын
Your channel really needs to get in the eyes of more researchers, the RE content is always top notch
@LiveLM9 күн бұрын
At first I thought it was just cracking protection, but purposely exhausting the phone's memory is too far. Sketchy ass app, people should really quit using crap like this
@sirflimflam11 күн бұрын
This is very interesting. Could finding something like this result in getting the app taken off the app store? Seems a little crazy to force the entire phone to crap itself as a matter of design, regardless of the likelihood of activating. I don't think Apple would appreciate the implied instability of the phone. Granted you wouldn't theoretically run into this problem unless you were trying to debug the app, but the fact they have kill code like that at all would raise some eyebrows for me if I was determining the suitability for the app to be on the storefront.
@aaronmaynard428 күн бұрын
I like your funny words magic man.
@TheHackysack11 күн бұрын
Sublime Text mentioned! Let's go!
@AlekEagle10 күн бұрын
16:53 would it be possible to compute what the shared folder would be and return that so resigned code would still work? Or does the iOS system prevent resigned packages from accessing shared folders from different signatures
@shavranotheferanox78094 күн бұрын
saw this in reccomended, got curious cause it looked interesting, understood absolutely 0 things, sended it to my gf who likes to "poke around" in apps and things as well
@darrenjones568811 күн бұрын
What’s the recommended device/version for jailbreak now? I’ve got an iOS 12 device but most apps won’t even install on it now.