Live data from Hacker News

JSFuck (2012)

jsfuck.com

81–90 of 168 posts

Re: JSFuck (2012)

#82
post #72

Past threads: JSFuck – esoteric JavaScript - https://news.ycombinator.com/item?id=9479834 - May 2015 (38 comments) JSFuck – Write any JavaScript with 6 Characters: []()!+ - https://news.ycombinator.com/item?id=6379732 - Sept 2013 (71 comments) JSFuck []()+ Use only 6 characters to write any JavaScript - https://news.ycombinator.com/item?id=4421848 - Aug 2012 (1 comment)

You're awesome dang. Thanks for the context.

Re: JSFuck (2012)

#83

Earlier quoted context omitted.

I'll make you a promise: if your code never ends up on my machine, I will never try to reverse it. Otherwise, all bets are off.

Don't request it then :p

If it's not part of any service that's marketed to me, I won't. However, if some vendor wants to run code on my machine, I _will_ be inspecting it.

Re: JSFuck (2012)

#84
post #73

Earlier quoted context omitted.

No thanks. Anything you submit to run on my machine is fair play :-)

This code should never run on your machine. :P

Then why are you obfuscating it or even worried about people deobfuscating it? This thread is about Javascript.

Re: JSFuck (2012)

#85

Earlier quoted context omitted.

It demonstrates how awful javascript is.

Flexible !== awful

I'd say about half the interactions this relies on fall in the 'trash' category. It doesn't mean javascript is trash, but it has a lot of trash in it.

Re: JSFuck (2012)

#86
post #84

Earlier quoted context omitted.

This code should never run on your machine. :P

Then why are you obfuscating it or even worried about people deobfuscating it? This thread is about Javascript.

Dude, I write financial applications in Node. Node IS javascript.

These applications run on the back end. Some of the API facing VMs have been attacked and so to be honest I've configured them so that if someone did get access to them, they wouldn't find much. Maybe just some API keys I can invalidate. Although I probably won't do it -- an obfuscator like this could be very handy here.

Re: JSFuck (2012)

#87

Earlier quoted context omitted.

Why would I put it on YOUR machine? It's my code. Don't hack my servers, or all bets are off. /s

JS is often (but not always) transmitted from the server to execute on the client machine

You've never heard of NodeJS?

Re: JSFuck (2012)

#88
Very cool. Reminds me of a few years back when I was writing apps for facebook..along with there fan pages. They had there own markup language 'fbml' and 'fbjs'. The app was executed in a sandbox inside an iframe, which you could add as a tab on a fan page as well. A few times I broke thru there sandbox, allowing me to run any xss on page load, even on the fan page...it grabbed there token and added friends, invited a random number or friends to a fan page, likes fan pages, then post a status update...all random, nd it would base it on how many friends the user had. Anyway, a big problem was other developers stealing my code thnx to it being JS...So I ended up using every bug in JS like this, to confuse. I made a function that would pull element names/type/src etc, then used that as a alphanumeric definition. So my source had no spelt out names...on top of using JS hacks..then finally obfuscating. I rmbr the last time I did this and released it into the wild..it was patched up by FB in the morning after it sent to a security researcher who posted on his popular site for his audience to reverse engineer, which they did in a few hours...everything but the few lines that was passed to fb's sandbox that returned the broken code which enabled me to run the xss.... Gooooood times...javascript is fun#!

Re: JSFuck (2012)

#89

New interview question: What will be the result of running the following code? [][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[ ]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[] ])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+ (!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+ !+[]+[+[]]]+(![]+[])[!+[]+!+[…

[deleted]

Re: JSFuck (2012)

#90

New interview question: What will be the result of running the following code? [][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[ ]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[] ])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+ (!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+ !+[]+[+[]]]+(![]+[])[!+[]+!+[…

JS-fuck is trivial to unpack if you have access to a javascript repl. Your code does a simple :

    alert(1);
here's how you do it :

https://i.imgur.com/fBDLD8z.png

Post reply on HN