19 ms·
A tool for recovering passwords from pixelized screenshots
- multiplegeorges 6y agoReminds me of the case of the child abuser who was caught by simply reversing a Photoshop filter. Reference: https://boingboing.net/2007/10/08/untwirling-photo-of.html https://boingboing.net/2007/10/08/untwirling-photo-of.html
- MattGaiser 6y agoWhy is pixelation preferable to a big black obliterating box? To me, it seems like a lot of wasted time and effort and potential arms race between encoders and decoders and the risk of being exposed when you could just put a big black box over whatever you wish to obscure.
- rriepe 6y agoIt's not. There's never going to be a tool that does this with black bars. The only benefit I can think of is legitimacy. Having something blurred there suggests that there was actually something there.
- thotsBgone 6y agoYeah I think blurring is more aesthetic, and until recently was seemingly just as secure. It reminds me of how people have used the Photoshop swirl tool to obscure faces, but you could just use the swirl tool in the other direction to undo the effect.
- Lammy 6y ago"Mr. Swirl"! https://en.wikipedia.org/wiki/Christopher_Paul_Neil#Interpol_search_and_capture https://en.wikipedia.org/wiki/Christopher_Paul_Neil#Interpol...
- est31 6y agoBlack bars alone may still leak info. First, if you add black bars on your own and don't use professional redaction features of software, you might miss the OCR text layer of the PDF, or the bar might be added as a separate object entirely which means it can also be removed later on. Second, if you don't use monospace text, the width of the text you are redacting will reveal information about it. That's why monospace fonts are so commonly used in the intelligence community for example. Third, if you just add a black bar to a screenshot, there might be residual values of the text left in adjacent seemingly white portions of the image, but they might not be entirely white due to compression effects. Better you run it through a filter before publishing.
- davchana 6y agoYes, in pdf, add bars, & then print it again as pdf, but as image.
- jbverschoor 6y agoEven black bars all leak the face that there’s something hidden
- davchana 6y agoDo you mean the typeface/font? If it is just a word we are hiding in a sentence/paragraph; it would be like fill in a blank task for reader; much more chance to guess from context. There, the leaking length will not matter.
- davchana 6y agoOh sorry, my bad, you mean fact, not face. Yes, I agree.
- jbverschoor 6y agoah. yeah fact :-)
- antegamisou 6y ago
- xorcist 6y agoThere is still a risk to leak the length of the password. If the font is known and the size of the rendered text can be inferred that would limit the search space considerably.
- davchana 6y agoPersonal Snippet, if I want to hide/cross something I wrote on paper, I usually change letters to something else, like u to g, i to d, nothing preplanned, whatever comes in mind, before I cross line the text in forward slashes, backword slashes, & in horizontal lines.
- bonoboTP 6y agoI thought I was the only one! Such a great trick. Just write random letters or even random sentences over your handwriting perhaps 2 or 3 times, then heavily cross it out and it's impossible to recover.
- KineticLensman 6y agoI sometimes write down on paper my banking passphrase (from which the bank makes me select letters at specific position). Afterwards I overwrite it a few times with the alphabet and a few numbers and other random letters. It's totally unreadable.
- nickjj 6y ago> There is still a risk to leak the length of the password. If the font is known and the size of the rendered text can be inferred that would limit the search space considerably. I do a lot of screencast videos and what I typically do is put a black rectangle well past the point where my secret text really ends. If my secret is: mysupersecretpassword You might end up seeing a black bar of: |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| What I'm most afraid of is accidentally having literally 1 frame of video where the bar isn't present. This is super easy to do if you're just scrolling through a timeline while editing. You need to really dive in and move frame by frame to ensure you get everything. I usually extend it a few frames in either direction just to be safe too.
- riidom 6y agoOnly reason I can think of: Pixelation has a more elegant touch than covering everything with a box (be it black, or some better suited color). Took a while to convince people to not use a bit of gaussian blur, because it's insecure. Well, ready for round 2...
- seltzered_ 6y agoWhat stops one from making a more secure pixelation algorithm? One that will shuffle around or maybe just randomly derive the pixelated blocks if they're within a certain color threshold of similarity? I still generally like pixelation over drawing a box for aesthetic purposes.
- lopmotr 6y agoFor elegance, it's a bit artificial, being tied to the technology of things that use pixels and popular software that zooms in on pixelated images as a grid of single-color squares. Maybe some unintelligible character-like symbols would look more elegant?
- xoa 6y ago>Why is pixelation preferable to a big black obliterating box? From a security perspective it has zero advantages, but I guess some people like the aesthetics? >To me, it seems like a lot of wasted time and effort and potential arms race between encoders and decoders and the risk of being exposed when you could just put a big black box over whatever you wish to obscure. There doesn't need to be an arms race, one can just erase whatever needed to be hid, put fake random text over it and then pixelate that. Ie., a prettier "black box" but still the same core method as a black box. In principle doesn't even need to be any more work, it'd be easy enough to throw together a simple "pixelate erase" script that'd take a selection, apply average solid color and random text over it, then pixelate the result all in one automatated step. The problem is if some people think any modification of the original information is ever good enough. Anything based on the original could leak information, so need to erase and then apply any desired aesthetics afterward.
- pvorb 6y agoYep, just replace the original password for "password" and pixelate that, if it really must look like a real password. And make sure to never use "password" as a real password, but that's a different level of shooting oneself in the foot.
- Hamuko 6y agoEven big black boxes require some amount of skill. https://twitter.com/Phthalaldehyde/status/1334714740740927489 https://twitter.com/Phthalaldehyde/status/133471474074092748...
- jaimex2 6y agoCan't facepalm enough. Just, amazing incompetence.
- closeparen 6y agoPeople say the same thing about scans of printouts. But I guess there is a reason for those.
- MattGaiser 6y agoThose at least destroy any non-visible data.
- pabs3 6y agoI feel like contrast enhancement or similar would be able to bring that back.
- Scoundreller 6y agoThat’s also why they scan in b&w with a potato. Also has the side-effect of making many graphs/charts impossible to interpret.
- esquivalience 6y ago> "with a potato" This is either a typo or I want to know more about it.
- chki 6y ago
- diebeforei485 6y agoThis reminds of the Markup tool[1] on iPhone. People use it to redact from screenshots, but it was (is?) actually slightly transparent by default. [1] https://9to5mac.com/2018/03/13/ios-markup-reveal-redact-sensitive-info/amp/ https://9to5mac.com/2018/03/13/ios-markup-reveal-redact-sens...
- tpoacher 6y agoone of the "underhanded c" contest winners many years ago was an entry for a redaction tool, which drew black boxes on an image in such a way that the software developer could later effectively recover the redacted information easily, while still being able to claim plausible deniability. The trick was that it worked by producing a ppm file where pixels with single digits would become zeros, but double digits would become 00, and three digit ints would become 000 (all valid values for black in ppm).
- sdenton4 6y agoReminds me of an old Perl module which translated code into a trinary alphabet with the characters space, tab, and new line. The resulting coded file is just an import statement and whitespace, but runs just fine.
- tpoacher 6y agoHere is the link if anyone's interested: http://notanumber.net/archives/54/underhanded-c-the-leaky-redaction http://notanumber.net/archives/54/underhanded-c-the-leaky-re...
- renewiltord 6y agoWait, shit I have totally done this. God damn it. Fortunately nothing super sensitive but damn.
- Lammy 6y agoNon-AMP link: https://9to5mac.com/2018/03/13/ios-markup-reveal-redact-sensitive-info/ https://9to5mac.com/2018/03/13/ios-markup-reveal-redact-sens...
- 6y ago
- ridaj 6y agoBecause pixelation doesn't attract attention as much as black box and is therefore a better placeholder. A black box with sharp edges has much more contrast than all the legit elements in the image and becomes visually dominant whereas typically you want to attract attention to something else on the page. For a similar reason, designers use "lorem ipsum" placeholder text rather than all-white or all-black placeholders when mocking up a layout
- jachee 6y agoThe clear answer is to use pixelated lorem ipsum for obfuscation. :)
- ridaj 6y agoBoom, startup idea right there. Provide secure-pixelize as a service, and monetize by selling on the side whatever info was sensitive enough for people to want to hide
- Rastonbury 6y agoWhite box then or a bunch of
- evan_ 6y agoA pixelated area communicates more clearly that there’s information present that is hidden from you- but not from others. It also can’t be mistaken for a design element.
- fermienrico 6y agoWhy always black boxes? The box could be of any color. In this case, white works best.
- huhtenberg 6y agoFor stylistic reasons. It looks less jarring when pixelated compared to being blackened out.
- rriepe 6y agoIs "pixelized" the norm somewhere? I'm used to "pixelated."
- jbn 6y agocould it be that the author's first language is not English? "pixelized" sounds like a literal translation of the French word for "pixelated".
- roelschroeven 6y agoJudging from the author's username, he/she is almost certainly Dutch, and in Dutch we tend to use English terminology in most technical matters. But we don't always use it 100% correctly, so that could be a reason.
- FroshKiller 6y agoThe way I use them, "pixelated" refers to images rendered to a target resolution in pixels. "Pixelized" refers to an image that is transformed to resemble pixel art of lower quality (in terms of resolution and color depth). A screen from Super Mario Bros is pixelated. That's what the art is supposed to look like. A screen from Broken Age running in Retro Mode is pixelized. The art isn't actually intended to look like that, and it's just for nostalgic effect.
- wiml 6y ago"pixelated" has a pre-existing meaning in English (discombobulated, airheaded, tipsy). An English speaker already familiar with the word might choose "pixelized" to avoid the collision.
- FroshKiller 6y agoYou're thinking of "pixilated," not "pixelated."
- pimlottc 6y agoI found the author's blog post on LinkedIn more informative: https://www.linkedin.com/pulse/recovering-passwords-from-pixelized-screenshots-sipke-mellema/ https://www.linkedin.com/pulse/recovering-passwords-from-pix...
- lights0123 6y agoThat link is also in the first section of the repository's README.
- sly010 6y agoRelatedly (and this is probably not surprising to anyone here) if you draw a black box on a PDF file to cover sensitive information, chances are a simple screen reader will still able to extract the information just fine.
- ciarannolan 6y agoRedact ---> print ---> scan ---> distribute. I think US courts and lawyers are finally starting to learn this.
- zinekeller 6y agoPaperless edition: Redact ---> convert to image ---> convert to PDF ---> distribute.
- ShakataGaNai 6y agoThat's why you always use the Adobe Acrobat Redaction tool. It'll obliterate everything and the metadata too!
- dawnerd 6y agoFound this out the other day on that story from the port explosion. They had a pdf with blacked out names, but you could just copy the text and paste it and it wasn't blacked out.
- gxqoz 6y agoEven if you do black box -> separate screenshot? Is that because the OCR is encoded in white pixels you didn't redact?
- ShakataGaNai 6y agoIf you take a screenshot of a PDF file that's been blacked out, then you're fine. There is no more OCR.
- gjvnq 6y agoThe safest way to redact PDFs is to convert them to images, draw black boxes on the sensitive content and create a new PDF from these images. This way the redacted PDF won't have any metadata from the original (e.g. bookmarks) nor risk any weired PDF redaction bugs. The downside is that your redacted PDF is (probably) larger than the original and isn't accessible. You can mitigate this by using OCR but it still isn't perfect and has a high chance of messing up tables or any special text placement. Some fancy combination of encodings (e.g. using JBIG2 except for images) can probably help with the filesize. --------- The best way to handle sensitive information is probably to use codenames (for people, places, etc) so you can share the original documents without worrying so much.
- tobr 6y agoSo as I understand it this technique rests on a number of assumptions: - You know the exact parameters used to render the text - You can render new text with the exact same parameters - The pixelated image hasn’t been ruined by color quantization or other destructive compression
- pimlottc 6y agoI could see someone assembling a corpus of sample text images covering commonly available fonts across major operating systems and having a version of this tool that brute forces all of them to find the best match. It would also be interesting to see how well it worked if there were differences in font rendering or compression as you say - I wonder if you it might still be close enough to make a partial match in some cases.
- trhway 6y agoThat basically how I did OCR 20 years ago :) One can also notice that kernels inside a text trained NN would have somewhat similar blocks and as a result what the net would be doing is a similar matching.
- lrossi 6y agoThis kind of techniques have been discussed here many times. See for example: https://news.ycombinator.com/item?id=8078747 https://news.ycombinator.com/item?id=8078747 I think one of the reasons people use blurring/pixelation is that it looks nicer than black boxes. Wondering if it would make sense to build a tool that renders a pixelated version of lorem ipsum or something like that. It would be secure while also looking good.
- scalablenotions 6y agoI've always thought that people's confidence is pixelation filters was unjustified, and that reversal algorithms are eminently achievable. This goes for pixelation of faces for hiding identities, too. Deep learning or even just genetic algorithms testing lots of possibilities and re-pixelating should be able to infer the original image.
- Jakobeha 6y agowould a neural network be able to do something like this?
- unlaxedneurotic 6y agoFrom the article - "Since the linear box filter is a deterministic algorithm, pizelizing the same values will always result in the same pixelated block." The author used this property to create the de-pixelizing algorithm. A neural network could do it, but it would be overkill.
- johnnyfived 6y agoWhy is this advertised for passwords only? It should work for any pixelated text. Just because cracking passwords sounds like a cool use case? This project is shooting itself in the foot. Plus it's not like passwords are ever pixelated on-screen, they're generally stylized as asterisks. But sweet leet hacking skills bro
- SulfurHexaFluri 6y agoA similar method was used to uncover the name of a game mode in a teaser video from nintendo. Since it was a video the pixels would change as things moved and you could reverse the pixelation fairly well.
- TheAdamAndChe 6y agoAny source for this? That sounds interesting.
- SulfurHexaFluri 6y agoIt looks like this may be more due to a mistake in the censor area than a general pattern you can use but here it is https://twitter.com/Lattie9001/status/1027204063811850240 https://twitter.com/Lattie9001/status/1027204063811850240 These kinds of mistakes show up constantly. Another one that often works is when people draw black bars over words they are often no 100% opaque and you can chuck them in to gimp, drag the levels around until the original word is exposed.
- manceraio 6y agoWhat about that bitcoin wallet that was blurred on TV and they managed to reverse engineer it? Cannot find source.
- nyanpasu64 6y agohttps://www.bbc.com/news/technology-41737248 https://www.bbc.com/news/technology-41737248 > Two French hackers used their computer skills to reconstruct a blurred-out code on TV and claim bitcoins worth $1,000 (£760).
- Vaslo 6y agoWhere are passwords even pixelized? I always see them as dots.
- riidom 6y agoLet's say, a software manual, where you show some screenshots or make a screencast, but for some reason it's not possible to use dummy data and you need to hide the real data (because it's customer's names, or alike)
- rootsudo 6y agoReminds me of how pedos were using the blur tool, and by using the unblur tool there you go, haha. Still cool edge case.
- shireishi 6y agoHas anyone tried it on hentai yet? Asking for a friend.
- eli_front 6y agoThe assumable backstory of this repo: This is really the collision between designers and programmers. Due to aesthetics, designers try and cover text up by using a blur. Programmers see this from a functional stand point, they see some security issues. Programmers act to prove their methodology is superior and that is the story of how this repo came into existence.
- system2 6y agoI prefer hard blur for my screenshots (sharex).
- howlgarnish 6y agoAsking for a friend: what's current state of the art in reversing pixelated censorship in Japanese movies? Obviously a tougher problem because the original is not known, but you'd think a well-trained GNN should be able to make a pretty good guess.
- navanchauhan 6y agoDecensoring Hentai with Deep Neural Networks: https://github.com/deeppomf/DeepCreamPy https://github.com/deeppomf/DeepCreamPy
- howlgarnish 6y agoInteresting, but seems to only work on static cartoon images where regions to uncensor have been manually identified.
- Liquid_Fire 6y agoIIRC there was another project which does the identifying part automatically, and then it's just a matter of doing it all in a loop for each frame.
- deleted 6y ago[deleted]
- app4soft 6y agoOld-school way: $ 7z a 12345.7z passwords.txt $ cat 12345.7z >> cats.jpg Try: https://i.imgur.com/McqO2eX.jpg https://i.imgur.com/McqO2eX.jpg
- _trampeltier 6y agoI think it also would work on a photo with very small unreadable text, or miss I something?
- 0x008 6y ago“recovering”
- Shaigyheart 6y agoSearching 2 3 sites will help u easily how to recover. Not focus on one site.
- keyle 6y agoSo that begs the question, can you do the same with faces? Sure the contrast is a lot worse but with added frames from video content maybe?
- hannob 6y agoI tried this to get a feeling how practical this is. It seems to me that this would only work in very rare situations. It needs some kind of pattern that is created with the same font. This pattern gets really large if you add a lot of chars (i.e. a-z already makes it huge). I tried this with a really simple example (numbers only, cutting exact frame of pixelated image, same font for pattern) and it didn't produce any useful result. TBH that doesn't look all that impressive. It's not a "throw pixelated image in here and get the unpixelated result" tool. (It's still of course valid to make the point that pixelation can be insecure. It's of course very much possible that much better such tools - likely by throwing in some ML - are possible and may even exist in the hands of people who won't share them on github.)
- JorgeGT 6y ago> It needs some kind of pattern that is created with the same font. If the goal is to de-pixelize some text in a public website (login form, username, phone, etc.) this is as simple as right click > inspect > input the sequence > screenshot.
- callamdelaney 6y agoLots of suggestions saying to use black boxes instead unless you save to a pdf and your editor just added your black box as a layer..
- crazygringo 6y agoSeems like pixelization algorithms should implement some degree of brightness and chromatic random noise in order to defeat this? To preserve the same aesthetics (a blurred username or identifier that doesn't call attention to itself) but would make it impossible to match against? E.g. in Photoshop, the "Filter > Pixelate > Mosaic" option should have a checkbox called "Secure" or "Security noise". Or there should be a separate filter called "Pixelate > Redact". Ideally it would use some intelligence to figure out the size of characters/symbols in the selected area and automatically figure out the right combination of pixel size and noise.
- Piskvorrr 6y agoOr flood the whole rectangle with black. If that's the only layer of the picture, there's no need to worry if the "secure noise" is secure enough, or if it stays secure in two years.