MALWARE ANALYSIS - VBScript Decoding & Deobfuscating

  Рет қаралды 1,030,155

John Hammond

John Hammond

3 жыл бұрын

If you would like to support the channel and I, check out Kite! Kite is a coding assistant that helps you code faster, on any IDE offer smart completions and documentation. www.kite.com/get-kite/?... (disclaimer, affiliate link)
For more content, subscribe on Twitch! / johnhammond010
If you would like to support me, please like, comment & subscribe, and check me out on Patreon: / johnhammond010
PayPal: paypal.me/johnhammond010
E-mail: johnhammond010@gmail.com
Discord: johnhammond.org/discord
Twitter: / _johnhammond
GitHub: github.com/JohnHammond

Пікірлер: 1 200
@tomnorman6877
@tomnorman6877 3 жыл бұрын
I came to see what this was. Was going to watch for 5mins... stayed till the end and wanted more 😄
@hulksunil
@hulksunil 3 жыл бұрын
lol! same
@anthonyschwartz6114
@anthonyschwartz6114 3 жыл бұрын
Same, I even drug my wife in about 15 mins in and had to restart. Lol
@UnDeFineDvProDucTion
@UnDeFineDvProDucTion 3 жыл бұрын
Same, i clicked midway and watched a few seconds, then ran it to the beginning and watched it all thoroughly! Good content, John!
@death5180
@death5180 3 жыл бұрын
Lol! same. I thought it was just a boring schinzel about a code.
@joker_g7337
@joker_g7337 3 жыл бұрын
Sorry to hear that. The first 10 minutes of the video is a painful waste of time. 2:44 "I am running on Windows right now, so I don't think I can run a .vbs..." But right under: "Programs that can open VBE files". It runs on Windows. I was so sorry for Mr. Hammond.
@abcq1
@abcq1 3 жыл бұрын
This video is just an artistic description of how much John hates tangent functions
@dionyzus2909
@dionyzus2909 3 жыл бұрын
I'm having to relearn trigonometry related stuff, because I'm studying computer graphics. Man, i forgot how I hated this part of geometry at school. Gotta stay on top of it though
@MrJeb123
@MrJeb123 3 жыл бұрын
I guess you could say this code kept going off on tangents...
@z_prospective160
@z_prospective160 3 жыл бұрын
interesting way to throw off virus detection... var random_int = 344; var tangent_of_random_int = Tan(random_int); var cotangent_of_random_int = 1 / Tan(random_int); over and over...
@z_prospective160
@z_prospective160 3 жыл бұрын
All of that was nonsense though... the real script was just stored as a string of ascII characters separated by a "@@@@@" delimiter.. and then that string was executed.. Once again a vulnerability exists where a script allows execution of string data as code... Mainly an issue for interpreted languages.. But I guess compiled languages could have this too but the compiler would also need to be included with the runtime, right?
@z_prospective160
@z_prospective160 3 жыл бұрын
@@tibettenballs4962 What is wrong with you?
@trebelojaques458
@trebelojaques458 2 жыл бұрын
Realising that entire ascii value-ish blob of nonsense was the actual malware, which was executed as string joins, has been a truly astonishing upload. I've never expected this'd be my morning
@bensons999
@bensons999 2 жыл бұрын
That's very common with malware, most of everything else in this one was just to try not to be flagged by antivirus.
@alluseri
@alluseri Жыл бұрын
That's not astonishing at all.
@willgordon5737
@willgordon5737 2 ай бұрын
That's how they escape getting detected by anti virus software. Becz the code is executed by another code all in the memory.
@jonbrandre3006
@jonbrandre3006 3 жыл бұрын
That switch to dark mode killed me 😂 Google was like "HACKER MODE ENABLED"
@nikolas8741
@nikolas8741 3 жыл бұрын
That's big brother algorithm
@spoiledbread5688
@spoiledbread5688 3 жыл бұрын
“To the dark side”
@Lo323984
@Lo323984 3 жыл бұрын
I was actually hyped when I saw that. I've been waiting for that for years.
@stellabransworth8399
@stellabransworth8399 3 жыл бұрын
Bennyhack_ on IG just made my day, All my files back like magic.. Thanks
@johncaccioppo1142
@johncaccioppo1142 3 жыл бұрын
"They're trying to save my eyeballs." No, friend. They are trying to save THEIR eyeballs.
@davidringo4672
@davidringo4672 3 жыл бұрын
Probably the tangent stuff was intended to send a malicious person on a tangent. This was fascinating to watch.
@PalCan
@PalCan 2 жыл бұрын
Haha my thoughts exactly. Malicious programmer: and let's send them on various tangents , then declare a bunch of functionas, redefine them and never call them.
@NoNameAtAll2
@NoNameAtAll2 2 жыл бұрын
i was expecting the eval function to reference those variables for calculation
@Dusk-MTG
@Dusk-MTG 2 жыл бұрын
When he sad "Now we're getting to the real malware", that's when I started not understanding anything anymore
@AkariInsko
@AkariInsko 2 жыл бұрын
when he sad 😔
@NeexT0P
@NeexT0P 2 жыл бұрын
@@AkariInsko LOL
@someshwartripathi8446
@someshwartripathi8446 2 жыл бұрын
😂😂
@The_One_0_0
@The_One_0_0 2 жыл бұрын
Lol this kid still won't fix it XD
@ryanflynn386
@ryanflynn386 2 жыл бұрын
Yeah I was having fun watching him decode it, until he was actually reading the malware, then I was like oof I have no idea what's going on haha
@slikshot6
@slikshot6 3 жыл бұрын
Thank god im not the only one what looks up these functions, reads the documentation, and the first words out of my mouth are "but wtf does that even mean"
@donjon61
@donjon61 3 жыл бұрын
"I'll secure my malware by obscurity". Nice
@jefflittle8913
@jefflittle8913 2 жыл бұрын
New variation on "security by obscurity" - sending the reader off on tangents...
@csgultekin
@csgultekin 2 жыл бұрын
Those random, doing nothing functions such as the excessive amount of sleeps and tangent functions are to evade from anti virus sw, that checks for hashes and heuristics. Those are added progressively with each version of the virus.
@MatthewIrizarry-4
@MatthewIrizarry-4 11 ай бұрын
That is really cool to learn. My thoughts were also to induce human error. Ex he’s deleting tangent function code and then accidentally deletes essential code but doesn’t realize it after deleting them so many times
@windrun87
@windrun87 3 жыл бұрын
So in VB, you can have arrays that can indexed in anyway you choose, and this can be chosen per array. If you wanted, you could have an array that's valid indices were 5-10. The purpose of LBound and UBound is to determine what that range is for a given array. LBound(array) returns the lowest index while UBound(array) returns the highest index. This allows for a generic loop structure of For i = LBound(array) to UBound(array) stuff using array(i) Next
@actualFix
@actualFix 3 жыл бұрын
Thanks, I hate it
@KebunH
@KebunH 3 жыл бұрын
@@actualFix at least they don’t start at 1.. not necessarily that is....
@0xwhoami
@0xwhoami 3 жыл бұрын
So basically VB Dev were like, hey let's creat this problem call it a feature and supply the solution by creating two functions
@sanguchito7381
@sanguchito7381 3 жыл бұрын
@@0xwhoami No, they where like "hey, lets give the programmer the flexibility of using whatever index they like, instead of creating an unnecessary problem of mapping the lower boundry to 0".
@0xwhoami
@0xwhoami 3 жыл бұрын
@@sanguchito7381 how is that a problem in any other lang like rust, python, c or java....etc
@Innosos
@Innosos 3 жыл бұрын
"Lol. Let's just copy paste some random function a couple hundred times. There. Obfuscated. I'm a genius." -some bad guy, probably
@davidfarah
@davidfarah 3 жыл бұрын
HAHAHAAHHA accurate
@LaughingShinoo
@LaughingShinoo 3 жыл бұрын
I mean, to be fair, John actually explains why they have so many of these tangent operations, which is to fool any external system trying to analyze the code or predict any specific behavior, they'll just think the code is doing random math stuff, while in practice the math stuff is completely useless, it's just used as a "mask"
@Innosos
@Innosos 3 жыл бұрын
@@LaughingShinoo I was referring to the constant declarations of the same functions with exactly the same variable names, content and operations below the actual code.
@hydropage2855
@hydropage2855 3 жыл бұрын
Not copy pasted, they clearly had some form of generator for this
@PiotrK2022
@PiotrK2022 3 жыл бұрын
Or he used alrread known by antyviruses script and did that to change its pattern and avoid detection.
@CodingGenesis
@CodingGenesis 3 жыл бұрын
"I swear I've done this before." - Famous last words
@prabufarhan175
@prabufarhan175 2 жыл бұрын
If the hacking action in hollywood movies are "real" like this, those movies would take hours before finish
@Auriflamme
@Auriflamme 2 жыл бұрын
Imagine an episode of Mr Robot - 44 minutes of coding and 1 minute of action/plot.
@To-mos
@To-mos 2 жыл бұрын
@@Auriflamme I love writing tools to make more tools just to watch them all do the work.
@normady4758
@normady4758 2 жыл бұрын
Wolverine could do it. “NEED MORE TIME!!!!”
@kensyjolicoeur
@kensyjolicoeur 2 жыл бұрын
Oh shit
@_JohnHammond
@_JohnHammond 2 жыл бұрын
To quiet a few annoying trolls, in this video I mistakenly said "I can't run a VBScript file because I'm running Windows right now". If I were on Windows, I could certainly execute the VBScript. I should have said "I'm running Linux" because I am clearly using Linux for this showcase. (You can still partially run VBScript code with Wine on Linux, but your mileage may vary)
@venc2k988
@venc2k988 2 жыл бұрын
trolls be clueless lollll
@Asdayasman
@Asdayasman 2 жыл бұрын
Someone pointing out you made a mistake without first reading each and every comment is not a "troll" my dude. Don't go diluting the meaning of the word by applying it to everything.
@ThelastArchdemon47
@ThelastArchdemon47 2 жыл бұрын
does that mean you dislike trolls? realy? why? are they not cute?
@Reichstaubenminister
@Reichstaubenminister 2 жыл бұрын
​@@Asdayasman People tend to call everyone they disagree with, especially their political opponents, trolls nowadays. Just accuse whoever you don't like of being disingenuous and you have a _valid reason_ to not argue the point anymore.
@michaelwerkov3438
@michaelwerkov3438 2 жыл бұрын
im so annoyed you havent google that regexpression yet
@karremania
@karremania 3 жыл бұрын
If i remember correctly, those tangets were called 'sandpiles', random piles of odd maths with completly randomized variables, was used to hide the first steps to decode stuff.
@firebreathN7
@firebreathN7 3 жыл бұрын
Just when I was saying "he is wasting his time, this code is just a troll joke" you made the @@@@@ magic and BOOM! you found the cake! ^_^ Thanks for sharing your skills John! Really appreciated
@nothingnothing1799
@nothingnothing1799 3 жыл бұрын
As soon as i saw @@@@@ with numbers In between i knew that was were the virus was
@PiotrK2022
@PiotrK2022 3 жыл бұрын
@@nothingnothing1799 Yeah, blob of nonsense almost made John fool...
@matthhiasbrownanonionchopp3471
@matthhiasbrownanonionchopp3471 2 жыл бұрын
I thought the guy was a fool who didn't know what he was doing and some how made a virus. But the blob_of_nonsense was decided and BAM I instantly gained +100 respect for who wrote the code. I don't know how common this trick is but it is smart anyway.
@kevinlao3690
@kevinlao3690 3 жыл бұрын
Me: Uh wow that's a long video. Let's watch it for 10 minutes and save it later. 40 minutes later - *subscribes*
@JasonBock
@JasonBock 3 жыл бұрын
This reminds me of a situation that happened at a client I was consulting at in the late 90s (it might have been ILoveYou, but I can't remember). An e-mail with an attached .vbs file was running rampant on user's machines. They finally stopped it, but they had no idea what it was doing. Since I had VB experience, I was asked to dive in and see if I could figure it out. The code was obfuscated in many ways similar to what Hammond runs into in this video, but I finally figured out what the code was doing....and it was pretty nasty.
@headblockhead
@headblockhead 2 жыл бұрын
What was it doing?
@JasonBock
@JasonBock 2 жыл бұрын
@@headblockheadIIRC, basically deleting images from every directory it could find on the user's machines, including mapped network folders....which included corporate product images....that weren't backed up either 😮.
@Nitidus
@Nitidus 2 жыл бұрын
@@JasonBock Did people in the 90s already think about backing up stuff?
@67hutch
@67hutch 2 жыл бұрын
@@JasonBock Wow. That’s horrible!
@England91
@England91 2 жыл бұрын
Oh I remember that virus
@Tordah123
@Tordah123 3 жыл бұрын
Him fighting the ragex is literally me, tears roll down my face everytime.
@0ShadowG0
@0ShadowG0 2 жыл бұрын
regex = "rage x", am I right? :D
@NostraDavid2
@NostraDavid2 2 жыл бұрын
Hearing him say "do I need that to be greedy?" and replacing * with + just hurts... Cant blame him for not comprehending regex. I followed a minor where I learned parsing (and with it regex) and it was *brutal*. Totally worth my time to learn though.
@Tordah123
@Tordah123 2 жыл бұрын
@@NostraDavid2 The worst offender is that different programs and languages uses regex differently so you must learn it all over again every time.
@remmoze
@remmoze 3 жыл бұрын
What lifeOverflow has taught me: if you see a long string, there must be some decoding going on. So ignore the junk code and go straight to the decoding loop. Then you can get the return value of that decoding loop (or just the value you end up with when the decoding is done) and go around with it. Removing all of those /Tan functions is time wasteful
@EliotLu
@EliotLu 2 жыл бұрын
Agreed, seems this is providing beginners a general approach to understanding and breaking down code. Indeed once you’ve done an exercise like this a few times, there’s no additional benefit and in fact is slower.
@giuseppezanichelli4100
@giuseppezanichelli4100 Жыл бұрын
@@EliotLu ⁷
@internetdoggo4839
@internetdoggo4839 3 жыл бұрын
I really enjoy these kinds of videos; fast-paced unnedited breakdown of malware ur a legened
@DefenderPlaysGuitar
@DefenderPlaysGuitar 3 жыл бұрын
Just here to say you should definitely do more of these
@wesleymays1931
@wesleymays1931 3 жыл бұрын
That first tag said "HAAAAA" because it was mocking you. It realized that it actually managed to stop you from reading the file
@md123180
@md123180 3 жыл бұрын
This was a great work-through! I loved watching your process! As a soon-to-graduate CS student, this brought a lot of stuff into focus, especially on how to work through these kinds of problems!
@Ookami8raven
@Ookami8raven 3 жыл бұрын
Will you be making more Malware Analysis videos?
@ismhdez
@ismhdez 3 жыл бұрын
It would be awesome! I like it
@benney25
@benney25 3 жыл бұрын
That would be fantastic! I'm trying to get into a security job, and knowing what malware looks like and how it works would be super super helpful, even if I don't use that knowledge in my interview or internship
@ff0x
@ff0x 3 жыл бұрын
This is my favourite john Hammond video so far ;) Dude you definitely need to do more of this stuff 👍
@Alexandritax
@Alexandritax 3 жыл бұрын
I agree, this teaches a lot about how mental people can get.
@Drakelett
@Drakelett 3 жыл бұрын
More please :)
@jasonemmanuel1031
@jasonemmanuel1031 2 жыл бұрын
I love learning with you! It’s always interesting and I feel like I’m learning along side you rather than being taught.
@randymartin9040
@randymartin9040 2 жыл бұрын
I'm only about 20 minutes in, but it's interesting to see this idea of a program obfuscating it's own code, then during it, possibly rebuilding it so that it can bypass virus detection. If that's what this thing is doing it's kind of brilliant if that's even possible. It seems like it has strings of characters that it's joining together, recursively. If, after all of that it used that newly made string for something devious, that's pretty interesting.
@andy02q
@andy02q Жыл бұрын
Yes, it's a clever idea, however that idea is (one year) older than the first computer virus (1948 vs 1949)
@mrpedrobraga
@mrpedrobraga 3 жыл бұрын
I almost died of pain in the RegEx part. Function .+[\s\S]*End Function Would do it
@zperk13
@zperk13 3 жыл бұрын
i kept yelling "use square brackets!" at the screen
@tylisirn
@tylisirn 3 жыл бұрын
I don't think anything would have done it. If you read the status line it says the regexp is running out of stack space trying to pattern match the enormous file.
@GazetaOnlineMG
@GazetaOnlineMG 3 жыл бұрын
yeah, but this regex will not select each function separately like that ^Function.+( .*?)+End Function$
@mrpedrobraga
@mrpedrobraga 2 жыл бұрын
@@dieregierung9388 ok now I can't even read it with my eyes anymore
@Akronymus_
@Akronymus_ 2 жыл бұрын
In regards to the stack one, possesive quantifiers could've fixed it: So, "^Function(?:.* )*+End Function$"
@vipinx8881
@vipinx8881 2 жыл бұрын
why did I just watch all of this and enjoy all of it... I'm really realizing how little I know about computers now
@userAndix
@userAndix 3 жыл бұрын
Interesting how the code was hidden behind some random garbage. Even the tangent functions make some sense now
@userAndix
@userAndix 3 жыл бұрын
@TruCrime interesting !
@JohnDoe-sp3dc
@JohnDoe-sp3dc 3 жыл бұрын
@TruCrime that's not at all what they do; In fact, using a site like virustotal will add their code to an online database making it more likely to be detected. The code has undergone a process called "obfuscation" which not only makes the code unreadable by humans, but also makes it very hard to identify as malicious by machines.
@JohnDoe-sp3dc
@JohnDoe-sp3dc 3 жыл бұрын
@TruCrime wait so you couldn't remember "one of those sites online" that magically tells you if your virus will get detected but im supposed to be intimidated by you or care what you think?
@JohnDoe-sp3dc
@JohnDoe-sp3dc 3 жыл бұрын
@TruCrime Try again. I answered the dudes question and pointed out where you were dead ass wrong. I'm sorry you consider using the correct term "flash carding".
@skyr3x
@skyr3x 3 жыл бұрын
the main reason to obfuscate is to make it unreadable and hard to approach. even renaming all your variables and functions to random strings and base64 encoding everything will make quite a lot of people trying to read your code go "nah, this mess isn't worth my time"
@bradlad1574
@bradlad1574 3 жыл бұрын
I always enjoy seeing your thought process in malware analysis. Good stuff!
@thestraightpipe
@thestraightpipe 2 жыл бұрын
I just got into learning IT and im very interested in coding. As I search more about coding, youtube recommends me videos like this. So You really got my attention by that caption. You got me even more hyped up about this all and you just earned another follower!
@floorpizza8074
@floorpizza8074 3 жыл бұрын
The way you un-obfuscated that code was inspiring.
@Octomany
@Octomany 2 жыл бұрын
It may sound a bit weird, but I love seeing you struggle with some things. Thanks for recording the whole thing. What matters the most to me is to understand your thought pattern and how you resolve the problems you encounter.
@ronjeremy6663
@ronjeremy6663 2 жыл бұрын
Same. I have only done a minimal amount of programming, mostly JS+CSS but I loved watching John dismantle and assess the code. The way he explained his methodology helped me better understand what I was seeing, and as soon as I saw the clear human coding, I knew exactly what I was looking at! Thanks for posting the whole thing!
@MemeticsX
@MemeticsX Жыл бұрын
In education terms, we call what he's doing a "think-aloud protocol." It makes one's thinking audible, which is very handy.
@FostersLab
@FostersLab 2 жыл бұрын
This was highly entertaining and enlightening! I'm taking a programming training course for the next few months, and having a glimpse into the wonderful world of cybersecurity like that, especially since it doesn't seem too complicated to decode, was really nice :) Subscribed! Cheers!
@MistaT44
@MistaT44 3 жыл бұрын
Randomly popped in my recommendations and I enjoyed every second of it! great job :) subscribed
@khalilbouzidi8432
@khalilbouzidi8432 3 жыл бұрын
Houdini, he's the creator of H-worm an Arabic developer specifically from Algeria
@gans512
@gans512 3 жыл бұрын
Or en.wikipedia.org/wiki/Harry_Houdini - an escape artist !
@khalilbouzidi8432
@khalilbouzidi8432 3 жыл бұрын
yes i know the real houdini but we are talking about the hacker behind this worm his nickname is houdini www.dev-point.com/vb/threads/411850/
@AhmetMurati
@AhmetMurati 3 жыл бұрын
The website is registered in Paris, France
@inferno7181
@inferno7181 2 жыл бұрын
@@AhmetMurati sounds about right for france lmao
@steezydeezy1889
@steezydeezy1889 3 жыл бұрын
As someone starting to work in the coding/IT field, it blows my mind that someone made something this thorough.
@xXYannuschXx
@xXYannuschXx 2 жыл бұрын
Theres even more insane stuff out there, look up the NSO Group iMessage GIF zero click vulnerability. These guys used the GIF preloader of iMessage to load a GIF that in turn loaded a PDF which in turn used a broken decompression algorithm that has a classic integer overflow, which in turn they used to program virtual logic gates into the RAM, which then was used to build NAND gates (which are the basic building blocks of modern processors) and then build a VIRTUAL SOC with it, that could search the RAM for keywords and relay the information back to their servers, without you noticing. EDIT: The GoogleProjectZero Blog has the most thorough analysis about it.
@serrendiptiy
@serrendiptiy 2 жыл бұрын
Fascinating stuff - thank you. Makes me realise now why I switched my brain off to learning coding when I was young. Just crossing my fingers that my yearly purchase of Bitdefender can cope, or that I remember to back up my drive very often!
@kharbandaumang
@kharbandaumang 3 жыл бұрын
new to this channel but already learning a lot.. just combine John's content with memory forensics and you have your own forensics course. Great John. Please keep the spirit up.
@eeejay2779
@eeejay2779 3 жыл бұрын
"Hashtag, at sign, tilde, karat, *haaaa*" why is this so funny
@empathyisonlyhuman7816
@empathyisonlyhuman7816 3 жыл бұрын
The author was basically calling either himself or his code evil. Look at the numbers under those symbols. 32~6 you don't go from 32 to 6 you step up by one so 33~6 or in other words three sixes 666 ha ha ha, or twice as evil given the two instances of 3. There is also a secondary joke here in that ~^ is a euphemism for dangling a carrot on a stick. Presumably for downloaded additional coding that makes the end user think everything's been fixed only to pop up again and again and again. It's actually kind of clever really.
@mattmmilli8287
@mattmmilli8287 3 жыл бұрын
The last man using sublime text
@ecluid1829
@ecluid1829 3 жыл бұрын
Hey John! I'm currently in school for CyberSecurity. Your videos are always interesting and I enjoy watching them in the background while helping myself code. Thanks for the content man :)
@beazlay89
@beazlay89 3 жыл бұрын
yeah more of these, this video I really enjoyed and it was suspenseful, funny. Great workflow how you rename the functions to map a picture
@geoffbrowning8968
@geoffbrowning8968 3 жыл бұрын
You're like if Seth Rogen was a computer guy instead of an actor
@DMalenfant1
@DMalenfant1 3 жыл бұрын
So he scams his workers and spergs out on twitter on a regular basis saying hateful comments about whites?
@DemonDante1000
@DemonDante1000 3 жыл бұрын
I can see that
@DemonDante1000
@DemonDante1000 3 жыл бұрын
@@DMalenfant1 can you be a troll somewhere else?!
@DMalenfant1
@DMalenfant1 3 жыл бұрын
@@DemonDante1000 I am pointing out a fact. Don't be such a sensitive tnuc.
@richwojehowski1123
@richwojehowski1123 3 жыл бұрын
Well I'm glad I wasn't the only one to immediately think this!
@auto117666
@auto117666 3 жыл бұрын
I prefer to let the code decode itself and then just pulling out what you need from hooking API calls or memory, but manual deobfuscation can be fun every so often.
@deidara_8598
@deidara_8598 3 жыл бұрын
I like just running it on my corporate network just to see what it does /s
@dae2530
@dae2530 3 жыл бұрын
@@deidara_8598 same xd that's a lot faster
@ihatethesensors
@ihatethesensors 3 жыл бұрын
@@deidara_8598 As root ;-)
@auto117666
@auto117666 3 жыл бұрын
@@deidara_8598 That is definitely one way to get the payload. :)
@DHIRAL2908
@DHIRAL2908 3 жыл бұрын
Tools like any.run are really useful to analyse network/system calls without decoding the payload!
@guardian2300
@guardian2300 3 жыл бұрын
Loved the video man. Also a lot of the comments were really helpfull on getting a better understanding of what was going on with the first huge piece of code!!!
@codygaudet8071
@codygaudet8071 3 жыл бұрын
I'm addicted to these videos. I learned more here than many other places. Keep it up bro!
@krlst.5977
@krlst.5977 3 жыл бұрын
That was interesting! Thank you, I had a lot of fun
@Balgoriusis
@Balgoriusis 3 жыл бұрын
Man I laughed so hard when you were trying to beautify the VB code. My company still maintains some VB6 code , its like a blast from the past. VB studio does not even allow wheel scrolling.
@Saboteur709
@Saboteur709 3 жыл бұрын
There is a little program you can download for free called "VBScroll.exe". If you run it before running vb6 you can use the mouse wheel to scroll the editor window.
@Balgoriusis
@Balgoriusis 3 жыл бұрын
@@Saboteur709 Yeah, I know. I just wanted to point out how terrible an experience the "old" VB languages and IDEs are.(Vb.net is ok)
@kevinwilson1218
@kevinwilson1218 3 жыл бұрын
i think i remember having to that issue trying to scroll in vb6
@AhrenBaderJarvis
@AhrenBaderJarvis 3 жыл бұрын
This was REALLY awesome to see you dive into this. Definitely would love to see more of it. :)
@brocka7758
@brocka7758 Жыл бұрын
This was fun to watch and I enjoyed seeing your process of "un-obfuscating" the code
@thierryvt
@thierryvt 2 жыл бұрын
I love how @25:00 he is the embodiment of "if you have a problem you are trying to solve with a regex you now have 2 problems"
@harrison1508
@harrison1508 3 жыл бұрын
26:00 im buckled in and commited to watching the struggle we are all too familiar with
@Lolspamstring
@Lolspamstring 2 жыл бұрын
It shows the reality of coding. Running into issues is inevitable regardless of your experience. (At least from my experience.)
@silent_wes8494
@silent_wes8494 2 жыл бұрын
I genuinely enjoyed this video!! Tbh this video got me motivated to learn more programming so that I can analyze malware. Can't wait to see more !!
@SeynArkwin
@SeynArkwin 2 жыл бұрын
Its refreshing watching a professional break down a malware code into understandable code ; Great content man
@ericvandertoorn6178
@ericvandertoorn6178 3 жыл бұрын
The regex for getting the line to work would've been [\s.]* ([] For characters to recognize, \s for any space character, . For any other char)
@tylisirn
@tylisirn 3 жыл бұрын
I don't think anything would have done it. If you read the status line it says the regexp is running out of stack space trying to pattern match the enormous file.
@NostraDavid2
@NostraDavid2 2 жыл бұрын
But . already includes whitespaces? After his initial (which was fine) he just needed a "(.+ )+End Function"
@NostraDavid2
@NostraDavid2 2 жыл бұрын
Oh wait. Does count as whitespace?
@ericvandertoorn6178
@ericvandertoorn6178 2 жыл бұрын
@@NostraDavid2 does count as whitespace. `.` usually doesn't include unless you set the flag for it
@NostraDavid2
@NostraDavid2 2 жыл бұрын
@@ericvandertoorn6178 right. Thanks!
@lunaballoona7802
@lunaballoona7802 3 жыл бұрын
I just love how he stares into the void for a bit before he starts talking
@frankmyers4736
@frankmyers4736 2 жыл бұрын
It got real juicy after second stage. I loved this video way more than I thought I would. Keep up the good work man!
@goldiemusic8394
@goldiemusic8394 3 жыл бұрын
That was impressive, thanks for showing us the setp-by-step process !
@mike36801
@mike36801 3 жыл бұрын
At 29:56 you can see it's using windows new line which is 2 characters and (CR & LF) (Linux is only ), so in your regular expression you should have used . Also, in vb you can declare arrays from any index to any index, so you can make an array like "Dim my_array(10 to 20) As Integer". LBound will return the lower bound = 10, and UBound returns upper bound = 20
@CapsizedPirate
@CapsizedPirate 3 жыл бұрын
Always use ? and you're never wrong. I was in physical pain watching him struggle lol
@pathseeker5439
@pathseeker5439 3 жыл бұрын
This is surprisingly fun for me
@BalajiRavichandiran
@BalajiRavichandiran 3 жыл бұрын
very good walk-through, please do more video like this. Very informative
@whatnowsami9225
@whatnowsami9225 3 жыл бұрын
Good stuff John. I would really love to see more videos like this. Botg instructive and fun... You got my subscription with this one.
@zanidd
@zanidd 3 жыл бұрын
The premiere is perfect for this format of video. Feels live, but I think you as the creator can concentrate on chat + the hacking at the same time 👍🏻👨‍💻
@zanidd
@zanidd 3 жыл бұрын
I may steal this for my let's hacks instead of editing them for 8 hours 🤣
@350606
@350606 2 жыл бұрын
Oh, Houdini! I remember having to deal with some variants of it before! It wasn't prevented by AVs back then. Luckily, they *did* block the extra downloads, so the infection wasn't too serious, but every USB drive ended with all files hidden and links to the VBE added, posing as the files. They did open your files after reinfecting your machine, so did not know anything was happening at all. The first couple times I had to deal with it I did manual cleanups of the systems and the drives, then more variants started coming in so I exploited the infection check and local update mechanism to make my own fake infection for our machines. The script thought it was running and that my version was newer than the ones it knew, so it did not replace it. EDIT: And most new "re-releases" of Houdini or Dunihi are pretty much the exact same script with a different hostname and a different packing added to mess with its signature.
@brandonhenderson4282
@brandonhenderson4282 Жыл бұрын
Watching this video brought me back to my days of studying for the OSCP. I enjoyed this a lot more than I thought I would.
@kochv87
@kochv87 3 жыл бұрын
Only 10min into the video and i already like it. I enjoy how you explain everything step by step!
@Tasarran
@Tasarran 3 жыл бұрын
Those tan functions and the weird functions at the end did just what they were supposed to; you spent twice as long messing around with those puzzles than it took to figure out the core code! :D
@flawlesscode6471
@flawlesscode6471 3 жыл бұрын
this was somehow even funnier than every meme channel combined
@hartescout
@hartescout 3 жыл бұрын
John! Glad to see you diving into malware analysis/maldoc
@steveyuhas9278
@steveyuhas9278 Жыл бұрын
I'm in the process of changing careers and learning how to code. This was so fascinating to watch and really really inspirational watching the analysis with use of logic and knowledge of syntax across languages. It might seem easy to some people watching, I'm not sure lol. But to me this is magical to watch, I loved every second. I hope I can be this good some day.
@0mni924
@0mni924 3 жыл бұрын
comment: "nice vid" purpose: "algorithm"
@nickswink7983
@nickswink7983 3 жыл бұрын
Could the tangent lines be written to literally send you on a tangent as sort of a play on words
@GrumpyGrebo
@GrumpyGrebo 3 жыл бұрын
Yes, one of the key components of good obfuscation is "red herrings" which make reverse engineering much more time consuming. Obfuscation is not about hiding functionality (can still be disassembled with static analysis for example) but making it not worthwhile to determine how it does it, and thus identifying ahead of time if it is a threat/how to counteract it. "You" predominantly being heuristic AV software; AV software usually has a limited window of opportunity within which to give something a red flag or a green flag, otherwise it slows down performance and people leave it Norton 1 star reviews. If you can survive the gauntlet, you're through one of hopefully many secure doors in a multi-layered security solution, onto the next level.
@DumbCrumb
@DumbCrumb 2 жыл бұрын
As soon as you stopped yourself to go back and explain the keyboard shortcut, I subscribed. Keep up the good work.
@ArcaneVortex
@ArcaneVortex 3 жыл бұрын
I didn't think I could watch the entire video, but following your thought process was just super fascinating. Would be super interesting if you did a video about your workflow. Tools,Extensions and maybe some neat resources.
@bastianwegge
@bastianwegge 3 жыл бұрын
It's just crazy how many people stay here because they relate to what you're doing :D. I love your content and I'm actually amused by watching something close to what I do every day.
@Johna41223
@Johna41223 2 жыл бұрын
9:09 It's always satisfying to find some actually humanly readable source code stuff 😅
@user-yd7ug3jb4t
@user-yd7ug3jb4t 2 жыл бұрын
This was a really awesome video, John! Thanks for always giving great content!
@zawarudo1818
@zawarudo1818 2 жыл бұрын
I love that you sound so professional and you also are
@pratikjha3647
@pratikjha3647 3 жыл бұрын
Doing KZfaq algorithm 'things' and expanding it.
@azurnxo2134
@azurnxo2134 3 жыл бұрын
Learned a lot from this video. Please do more of these videos!
@fish4716
@fish4716 2 жыл бұрын
I found it very cool that you were figuring it out as you recorded the video and showed all the troubleshooting though processes.
@thetuerk
@thetuerk 2 жыл бұрын
Hello, I just stumbled o to your channel! There is something weirdly relaxing about not having any cuts, or being able to follow the entire discovery process.
@siddhantsiwach
@siddhantsiwach 3 жыл бұрын
this is more interesting than a suspense thriller movie
@JuniorJunison
@JuniorJunison 3 жыл бұрын
I love how he describes his interaction with this vbs script as if he and it danced together.
@theclassyox
@theclassyox 2 жыл бұрын
I had nearly no hope for this to be an interesting video but I was bored senseless. Yet you delivered! Well done, I subscribed for more.
@IanJBarker
@IanJBarker 2 жыл бұрын
I did not expect to watch as much of this as I did! Great video!
@l15t3nr
@l15t3nr 3 жыл бұрын
More malware analysis please!!!
@xB-yg2iw
@xB-yg2iw 3 жыл бұрын
"More tangent functions, DIE" AHAHA
@skylosuno
@skylosuno 3 жыл бұрын
I have been wondering what Malware Analysis is like, This video is awesome. Thank you for sharing!
@Inspire22Aspire
@Inspire22Aspire 3 жыл бұрын
this is so satisfying to watch I was like I'm going to go watch an episode of a serie and than change my mind like nah I'm just going to watch a short KZfaq video and sleep but here I'm at the end of the video.
@Cyclically
@Cyclically 3 жыл бұрын
pretty cool.
@adamploof3528
@adamploof3528 3 жыл бұрын
25:19 was my every regex experience ever.
@Yarbo119
@Yarbo119 3 жыл бұрын
I have a cursory understanding of programming. Not enough to write a program myself, but enough to sort of follow along. I'm 20 minutes in, and this is great. Why is this so interesting?!
@calwooten
@calwooten 3 жыл бұрын
cool! really like watching you walk through your process.
@TheAngelOfDeath01
@TheAngelOfDeath01 3 жыл бұрын
Google: "You are now using Dark Theme" No shit, Captain Obvious!
@1DrowsyBoi
@1DrowsyBoi 3 жыл бұрын
Me, randomly finding this video and have been learning C# for the past four months, staring at the end of every line: "... Where is it? Does this world know no law and order?"
@snuscaboose1942
@snuscaboose1942 2 жыл бұрын
;
@guitarzan0001
@guitarzan0001 2 жыл бұрын
I've seen these obfuscated vbscipts before, even deconstructed them a bit (but not to it's conclusion like you did ). Never thought I would see parsing a vbscript on KZfaq, this was fun!
@imadbg9260
@imadbg9260 3 жыл бұрын
I learned a lot from you man, thank you very mush and thank to the community
Is THIS a VIRUS? Finding a Remcos RAT - Malware Analysis
1:12:12
John Hammond
Рет қаралды 356 М.
Unraveling a REMOTE ACCESS TROJAN (VBScript Deobfuscation)
31:20
John Hammond
Рет қаралды 159 М.
Mac & Cheese Donut @patrickzeinali @ChefRush
00:53
albert_cancook
Рет қаралды 213 МЛН
WWE is real💔
00:16
IShowSpeed
Рет қаралды 83 МЛН
Advanced Database Cleaner
14:07
David McCan
Рет қаралды 87
Tracking Cybercriminals on Telegram
23:26
John Hammond
Рет қаралды 202 М.
FAKE Antivirus? Malware Analysis of Decoy 'kaspersky.exe'
1:28:19
John Hammond
Рет қаралды 271 М.
I Tried a Disney Secret Project!
11:33
Marques Brownlee
Рет қаралды 4,1 МЛН
Using My Python Skills To Punish Credit Card Scammers
7:13
Engineer Man
Рет қаралды 4,8 МЛН
TARGETED Phishing - Fake Outlook Password Harvester
47:09
John Hammond
Рет қаралды 256 М.
Discord Malware - "i hacked MYSELF??"
58:21
John Hammond
Рет қаралды 192 М.
I Bought a Recording Jammer. It’s Legal.
14:00
Linus Tech Tips
Рет қаралды 1 МЛН
everything is open source if you can reverse engineer (try it RIGHT NOW!)
13:56
Low Level Learning
Рет қаралды 1,2 МЛН
I Built a PC that Makes Coffee
23:16
Nerdforge
Рет қаралды 326 М.
Mac & Cheese Donut @patrickzeinali @ChefRush
00:53
albert_cancook
Рет қаралды 213 МЛН