Chainsaw

Type your comment> @lyak said:

Some people have written to me, but I’ll answer here. I’m currently root on the machine, but there’s a last step.

I suggest you to read up on smart contracts. It really doesn’t matter if you deploy your own in this scenario. The idea is to get a shell, remember that. So look at the name of the smart contract and think how would that be possible, then look at the options for the smart contract that you’ve got. The smart contract is all you see, but a process running on the computer is watching what happens with the smart contract, try to exploit that. Read up on web3

Thank you @lyak for this phenomenal hint. I was trapped for a long time. Kudos to you and +1.

Don’t kill and restart certain processes. They don’t re-instantiate and you end up with unusable services.

Question to those who got user:
I can pop a shell using a pretty basic technique (even though the path of delivery is quite different and took me a while to figure out, because I never worked with that kind of technology which in my book is placed in the chapter “Hipster techno-BS”) as “some very well known username”. Is the user flag supposed to be there or do I first need to pwn another user on the system? If so, is the user I need to pwn referred to by name in a very popular xkcd about a very popular attack technique? :wink:

@Xentropy said:
Don’t kill and restart certain processes. They don’t re-instantiate and you end up with unusable services.

Obviously – one should be careful when engaging with a target, there is no ‘reset’ button IRL.

Type your comment> @darkkilla said:

Question to those who got user:
I can pop a shell using a pretty basic technique (even though the path of delivery is quite different and took me a while to figure out, because I never worked with that kind of technology which in my book is placed in the chapter “Hipster techno-BS”) as “some very well known username”. Is the user flag supposed to be there or do I first need to pwn another user on the system? If so, is the user I need to pwn referred to by name in a very popular xkcd about a very popular attack technique? :wink:

I’m sure no one deleted the user.txt file :slight_smile:

Well, hours ago found some weird script in the a*****… user home subfolder, along with some left over files that are useless without a counterpart. Tried executing the script to see if maybe something shows up in pspy. Tried placing a logger inside that script but pspy shows no activity on the system that would suggest cron jobs touching this stuff. But maybe this thing is just there to troll. I also found the high thing, redirected it and poked it with the stick I used to get the initial foothold but to no avail. A popular enumeration script also didn’t help a lot. All I have left is a list of usernames to try but I hate trying to guess their passwords (as this imho totally isn’t what HTB should be about - “who has the fastest gear to crack stuff?” etc.), probably won’t work anyway. If the high thing is running some contract I haven’t been able to find its source or even only byteCode. Also I found that the things are spawned by some high level daemon which uses the name of Novell Netware’s default administrator account name and I found the definitions in the configuration dir of that daemon. So where should I poke this weird thing next to get even something like a general direction for user? As of now this is like trying to catch a shadow inside a completely dark room…

@darkkilla you have everything you need in the user’s folder

Type your comment> @lyak said:

@darkkilla you have everything you need in the user’s folder

Are you referring to something from outer space with 4 letters in it? I was blind… lol

Anyone have any advice on how to “mine deeper”?

Type your comment> @darkkilla said:

Type your comment> @lyak said:

@darkkilla you have everything you need in the user’s folder

Are you referring to something from outer space with 4 letters in it? I was blind… lol

You bet he is, you are on the right track

Anyone have a hint on initial foothold? I've connected to *810 a few different ways, one through Re*** IDE, through G**h. Read up on W**3 and all the commands but I can't seem to make anything happen up there worth mentioning.

Update: Make sure the address has not changed!

Yea same for me. One thing to learn a new concept in a day, and completely another thing to find a working exploit on it. Day 2 onwards!

@frankx said:
Anyone have a hint on initial foothold? I've connected to *810 a few different ways, one through Re*** IDE, through G**h. Read up on W**3 and all the commands but I can't seem to make anything happen up there worth mentioning.

Well I am still blind as a bat I guess. I dumped the contents of the thing from outer space (and also I copied everything I had read access to my local machine… basically rsyncing the “whole” machine… still working on a way to remove everything from that ton of files/folders that is native / unmodified to the real OS and sifting through the remaining stuff), found the counterparts to the files found somewhere else but the counterparts are encrypted. I can’t seem to find the place where I should get the passphrase from… again I definitely don’t want to try and throw wordlists at the files… which would be a last resort. There are files in /tmp I tried reading but from what I say they got created while getting the initial foothold when sending transactions. So far this machine has been my Kryptonite. The only thing I could imagine would be using some sort of “ID” to get data from the two services but then again: The one service apparently has only the first block with nothing of value in it and the other one only has stuff which is related to my own activities. I also found something listening on UDP on a particular port but I think it’s related to the outer space thingy… which would mean that anything I could find on that port would somehow also be present in the files.

@darkkilla said:
Well I am still blind as a bat I guess. I dumped the contents of the thing from outer space (and also I copied everything I had read access to my local machine… basically rsyncing the “whole” machine… still working on a way to remove everything from that ton of files/folders that is native / unmodified to the real OS and sifting through the remaining stuff), found the counterparts to the files found somewhere else but the counterparts are encrypted. I can’t seem to find the place where I should get the passphrase from… again I definitely don’t want to try and throw wordlists at the files… which would be a last resort. There are files in /tmp I tried reading but from what I say they got created while getting the initial foothold when sending transactions. So far this machine has been my Kryptonite. The only thing I could imagine would be using some sort of “ID” to get data from the two services but then again: The one service apparently has only the first block with nothing of value in it and the other one only has stuff which is related to my own activities. I also found something listening on UDP on a particular port but I think it’s related to the outer space thingy… which would mean that anything I could find on that port would somehow also be present in the files.

Sometime it has to be:

But you sound to be definitely on the right track

Rooted! What a fun box! Every step taught me something I haven’t gotten to do on HTB before. :smiley:

User: Just use what’s in front of you.
Root: It’s still in front of you, but it’s no longer related to previous steps. :slight_smile:

(There’s another step after getting the root account. I’m referring to getting user.txt and root.txt files, not getting a user account or getting a root account.)

Any hints for that final last step as that is where I am up to, not sure where/how to ‘mine deeper’ so to speak.
Thanks in advance

Mind if I dm you? Could use a sense of direction

@Xentropy said:
Rooted! What a fun box! Every step taught me something I haven’t gotten to do on HTB before. :smiley:

User: Just use what’s in front of you.
Root: It’s still in front of you, but it’s no longer related to previous steps. :slight_smile:

(There’s another step after getting the root account. I’m referring to getting user.txt and root.txt files, not getting a user account or getting a root account.)

Not sure how to make the thing “do” something useful. I can set+get - any read how to advance further into the block ?

Okay I was able to get SSH access as the one starting with b by feeding stuff to my good friend John and I found two ways to get root. One tedious through the “high thing” foo and one super easy way to bypass this whole ordeal due to the way a certain binary is programmed. (First used the easy method and then the tedious one hoping to get root flag this way…)
Don’t know if the easy path (lol) is intended by the machine author…
But maybe somebody can point me wtf "RC" in this newfangled and insecure hipster industry stands for? Google only gives me crappy results when I search for that combined with E*****m. Does it somehow relate to the first block?

any good references on calling functions in W****s? I can connect up, but am lost once it comes to querying and getting results

edit: nvm, overthinking it

edit2: any tips for root would be appreciated, stuck on project