Let's talk about steganography, hidden archives, binary encoding schemes, etc

Let's talk about steganography, hidden archives, binary encoding schemes, etc

Post all your images embedded with ebooks here

Other urls found in this thread:

github.com/desudesutalk/desudesutalk
fat.gfycat.com/FlawedEllipticalAmphibian.mp4
oxwugzccvk3dk6tj.onion/file_store/fad8620ec46841daaff693d6075f19e102985bef2d91a742cd684091cb0f15e3.webm
en.wikipedia.org/wiki/Steganography_tools
encyclopediadramatica.se/Embedded_files
wiki.installgentoo.com/index.php/List_of_recommended_GNU/Linux_software#Steganography
ollydbg.de/Paperbak/
en.wikipedia.org/wiki/Steganography
quickcrypto.com/steganography-software.html
garykessler.net/library/steganography.html
blog.brian.jp/python/png/2016/07/07/file-fun-with-pyhon.html
help.imgur.com/hc/en-us/articles/210076663-Upload-Images
pastebin.com/WgMRay62
nopaste.me/view/ff6937ac
nopaste.me/view/451c391a
twitter.com/SFWRedditImages

I think Jim has starting stripping images concatenated with extra data.

that's not what steganography is

Who said it was?

well hopefully op was talking about embedding ebooks using actual steganography not just cat.

but maybe I was giving him too much credit

If you put the data in the unused bits, which are random, its harder to detect. You just need to try and make your distribution of the data appear random as well, which is a bit tricker. This is a great topic, maybe somebody can post the Lainzines? I have number 1 and 2 if nobody else posts 'em. I don't know if Jim is so sophisticated to strip data in that they JUST got the save as original filename working, after about two years, but again, anything to fuck over the userbase, ammiright?

But the particular algorithm should be shared or nobody can do more than strip concatenated files. Anybody still fucking with DDT? I didn't try it because Javascript.

The OP was pretty broad, not just about steganography.


Does anyone know the best method to store arbirary data in audio and have it survive lossy compression? How much data could I store in the audio of a 10 hour youtube video for example?

I was fucking around with minimodem the other day, tones at 1200 baud was able to survive 48kbps mp3 compression.

Obviously very inefficient. 1.2 kbits a second.

Someone already figured out how to store data in youtube video. You can do it with ffmpeg.

It's data in 8x8 monochrome blocks, all the data can survive youtube's compression.

Decode this video with,

ffmpeg -i stallman.webm -vf "format=pix_fmts=monob,scale=iw/8:-1" -sws_flags area -f rawvideo file.7z

Then Jim will start using lossy compression on all uploaded images, to save disk space and defeat steganography.

github.com/desudesutalk/desudesutalk

And it's made by Russians. I don't trust it.

...

So how do I read it?

When this board was new we has something like three DDT threads. I guess those oldfags are gone now and I got left behind on this shitty chan. Look at the other thread where data is strpped and images are recompressed. Its been like this for the last few months. I remember reading about it but being reminded about it, 8ch altering image files will fuck shit up. The technique in should be worth a try though.

Source? My search engine kung fu was useless.

You showed us how to decode a video, but how to encode a file into a youtube video?

To clarify: to do this on Holla Forums you need steganography at an image level, not at a file level. Files are recompressed.

I don't Holla Forums is compressing images.

What did he mean by this?

Found this

"warning: this pads 0s at the end of the input file so the last frame can be completed. zip the files first and only use the zip as input."

#!/bin/bashinput=$1width=1280height=720rate=30##pad input to avoid truncationframesize=$(($width*$height/(8*8)/8))truncate -s %$framesize $1ffmpeg -f rawvideo -pix_fmt monob -s $(($width/8))x$(($height/8)) -r $rate -i $input -vf "scale=iw*8:-1" -sws_flags neighbor -threads 8 -deadline best -c:v libvpx -b:v 256k output.webm

Is there a way to decode that video without ffmpeg?

I am currently using Debian 8.5 but ffmpeg wont fucking work.

sudo apt-get install libav-tools

Replace ffmpeg with avconv

Why the fuck would anyone want to store files in a youtube video? It's completely retarded and inefficient.

Use google drive.

chill out, it's just for fun and fucking around. No one is backing up all their files to youtube.

It works. Although I haven't tested it on youtube, I wrote this to show my gratitude.
#!/bin/bash

I converted stallman.webm to avi and mp4 and was able to decode both back to the 7z.

It should work on youtube & other video hosts. As long as the host allows you to download the video in it's original dimensions (1280x720) and frames per second (30).

shouldn't that be $input now?

just tested it, that line should be changed to:

truncate -s %$framesize $input

I uploaded this to Gyfcat. Gfycat converted it into a 2.9 MB mp4.

It decoded into the same 496kB 7zip file.

fat.gfycat.com/FlawedEllipticalAmphibian.mp4

Very inefficient.

So you tested it with smaller dimesions and less frames and it didn't work?

Thanks guys. Here is a new version with that fix and a new until loop that makes user error less likely.
#!/bin/bash

It is, but now we can upload trap porn to youtube.

You can probably use whatever dimensions and frame rate you want in the original encoding.

Some video hosts have limitions on what they encode to. The video host might downscale your 1280x720 60fps video into something like 480x270 24 fps.

So if I where to upload
oxwugzccvk3dk6tj.onion/file_store/fad8620ec46841daaff693d6075f19e102985bef2d91a742cd684091cb0f15e3.webm
to youtube and downloaded it at 360p, that would not convert back into the zip.

But if I originally made the video size 360p, it would convert to zip.
Right?

Right. The frames per second has to be the same too.

Is there a way to embed files into normal pictures and get them back again?

Understood, thank you friend.
:3

en.wikipedia.org/wiki/Steganography_tools

Here are some things that channers have done/recommend.
encyclopediadramatica.se/Embedded_files
wiki.installgentoo.com/index.php/List_of_recommended_GNU/Linux_software#Steganography

Deep Sound is great

btw, encoding arbitrary data into pictures and video like these isn't be considered steganography.

It's 2016, and people still aren't backing up their important files on paper.

ollydbg.de/Paperbak/

You are right. Maybe it is cryptography then.

Steganography (US Listeni/ˌstɛ.ɡəˈnɔː.ɡrə.fi/, UK /ˌstɛɡ.əˈnɒɡ.rə.fi/) is the practice of concealing a file, message, image, or video within another file, message, image, or video. The word steganography combines the Greek words steganos (στεγανός), meaning "covered, concealed, or protected", and graphein (γράφειν) meaning "writing".
en.wikipedia.org/wiki/Steganography

Steganography is the science of writing hidden messages in such a way that no one apart from the sender and intended recipient even realizes there is a hidden message.
quickcrypto.com/steganography-software.html

Steganography is the science of hiding information. Whereas the goal of cryptography is to make data unreadable by a third party, the goal of steganography is to hide the data from a third party.
garykessler.net/library/steganography.html

That must be a nightmare to read back into your computer.
Maybe it would be good to store passwords or something.

anyone with a throwaway youtube account, upload these trap pictures to youtube. See how long it takes to get taken down.

I also would like to see this work of art on youtube.

Convert RGB values to raw binary, add .epub extension.

This might be a viable method for imageboards:

blog.brian.jp/python/png/2016/07/07/file-fun-with-pyhon.html

It's been tested with imgur apparently.

It works by putting data into valid PNG chunks.

Hmm, I just tried to upload a test image and got this rather verbose error:

Failed to resize image! Details: http: Expected 4 bytes; found 0 bytes `/tmp/phpnoHfD1' @ warning/png.c/MagickPNGWarningHandler/1656.http: Read Exception `/tmp/phpnoHfD1' @ error/png.c/MagickPNGErrorHandler/1630.http: corrupt image `/tmp/phpnoHfD1' @ error/png.c/ReadPNGImage/3959.http: no images defined `jpg:/tmp/convertU2Xl1E' @ error/convert.c/ConvertImageCommand/3252.

It would appear that imagemmagick doesn't like it for whatever reason.

help.imgur.com/hc/en-us/articles/210076663-Upload-Images

Non-animated images over 1MB for anonymous uploads and 5MB for account holders will be lossily compressed. All non-animated images receive lossless compression that reduces filesize while maintaining quality.

For the love of GNU, no sage required!

decode this

...

I got this error when I first opened this image, but was able to download and extract after refreshing.

It's probably cloudflare that made embedded archives wonky, not Jim.

That means what raw video is 160x90. then why you do this
write it as scale=160:90. In this case if you create 1280x720 video and then someone download it as 640x360 it will be downscaled correctly.

Or I'm wrong?

I'm not really sure if you are right or wrong. Since I copy and pasted the the ffmpeg lines from these posts with limited understanding of how they work:


ffmpeg -f rawvideo -pix_fmt monob -s $(($width/8))x$(($height/8)) -r $rate -i $input -vf "scale=iw*8:-1" -sws_flags neighbor -threads 8 -deadline best -c:v libvpx -b:v 256k stegOutput.webm
My best guess is that the above line is the way that it is so that you can replace
width=1280
height=720
with any values that you want so that you can use the script on different video resolutions that do not go by a 80:45 ratio.

"format=pix_fmts=monob,scale=iw/8:-1" I think sets data in 8x8 monochrome blocks, and doesn't have to do with resolution values from above.
ffmpeg -i $input -vf "format=pix_fmts=monob,scale=iw/8:-1" -sws_flags area -f rawvideo file.7z

But, again, I don't know. Play around with it if you are interested. We can integrate anything nifty you discover into the script.
:3

These are all 16 by 9 of course:
80:45 = 16:9 = 160:90

...

I'm retarded so I made my own version in javascript. You will need node.js, ffmpeg and convert (from imagemagick)

Usage:
for embed: node fleee.js -e -i payload.7z [-p PASSWERD] [-c image.jpg]for extract: node fleee.js -x -i payload.7z.webm

My version does padding with random bytes. But it stores size of payload and file will be extracted with correct size. It also compress file, so you can embed text without archiving them first. If you provide password with -p then file will be encrypted before embedding. If you provide image with -c option then it will be used as "background" like in attached webm. Because much of preprocessing and postprocessing is done via imagemagick embedding and extracting can take several minutes (for large data). I tried to recode webm to mp4 with downsampling to 640x360 and it was extracted correctly. No error handling so be prepared.

The script: pastebin.com/WgMRay62 (do not know why, but can't post it here, 8ch rejects my post)

cool, thanks

30 framerate might be better. A lot of video hosts do weird things with 60 FPS videos. Not sure how youtube handles it.

How do I decode this?

Could someone write this as a shell script? I don't want to download node.js.

Nah. Enjoy your JavaScript. This is really what's wrong with Holla Forums. All you can do is complain, but not make anything better.

I'm pretty busy so I may be translating this fairly slowly.
Here is my step one. I replaced [','] with [" "]
from
nopaste.me/view/ff6937ac

If anyone else who already knows javascript would like to help, I'd appreciate it.

Fun stuff, but you'd hear modem sounds pretty easily. Does anyone know if any research on audio watermarking or audio steganography is public? Since it's mostly used for DRM I don't have high hopes but you never know.

😁

...

HELP?? THE TITS WONT PLAY??

The image was actually a steganographic latent homosexuality test. You're gay.

1 replaced [','] with [ ]
2 replaced [spawn('] with []
nopaste.me/view/451c391a
If anyone else who already knows javascript would like to help, I'd appreciate it.

Is there a tutorial online how to do this?

bump thread to fight the MS & Google shills here currently.

I'm putting this project on hiatus until I get some more free time.
I may post it here when it is complete.
My guess is that I'll finish it sometime over the next 365 days.