You can easily upload your files to our service using a Unix/Linux command-line interface.
This service allows HTTP PUT for curl -T and some TCP ports for uploads using netcat/telnet.
All the ports described below are available via our Tor hidden service as well - 5ety7tpkim5me6eszuwcje7bmy25pbtrjtue7zkqqgziljwqy3rrikqd.onion
curl -T /path/to/file https://oshi.at
curl -T /path/to/file https://oshi.at/customfilename
# use a different filenamecurl -T /path/to/file https://oshi.at/customfilename/15
# use a different filename and expire in 15 minutescurl --upload-file /path/to/file https://oshi.at/customfilename/60
# expire in 60 minutes curl -T /path/to/file https://oshi.at/customfilename/-1
# auto-destroy after first download curl -T /path/to/file http://5ety7tpkim5me6eszuwcje7bmy25pbtrjtue7zkqqgziljwqy3rrikqd.onion
# upload using our Tor hidden servicecurl -T /path/to/file "https://oshi.at/?expire=1440&autodestroy=1"
# auto-destroy on dl and expire in 24 hoursAvailable HTTP parameters: expire
, autodestroy
, randomizefn
, filename
, shorturl
curl https://oshi.at -F f=@/path/to/file
curl https://oshi.at -F f=@/path/to/file -F expire=5
# expire in 5 minutescurl https://oshi.at -F f=@/path/to/file -F expire=120 -F autodestroy=1
# autodestroy on download or expire in 120 minutescurl https://oshi.at -F f=@/path/to/file -F shorturl=0
# force a long URL in order to prevent possible short URL bruteforcecurl https://oshi.at -F f=@/path/to/file -F randomizefn=1
# randomize filenameAre you an advanced IT person and need to upload your files using raw TCP session? It's possible right here. This service is inspired by tcp.st
Our TCP ports:
As a response we return 3 URLs: Management URL, Clearnet download URL and Onion download URL
The maximum size for TCP uploads is currently limited to 150 MB
nc -q2 oshi.at 7777 < /path/to/file
Now let's imagine you've got an illegal access to a MIPS router running OpenWRT and found some rogue malware binary that you would like to analyze or send to VirusTotal.
There is no netcat or curl, but only telnet and there is no easy way to download the file. Here comes dat boi!
Sending raw binary files via telnet is impractical, you better encode them in Base64 or Hex, that's why we have these ports
Our 7778 port is a TCP server decoding everything from Base64, so you just need to encode your file.
Below examples demonstrate how to upload a file using different tools for encoding
( sleep 1 && base64 /path/to/file ) | telnet oshi.at 7778
( sleep 1 && perl -MMIME::Base64 -0777 -ne 'print encode_base64($_)' /path/to/file ) | telnet oshi.at 7778
Our 7779 port is a TCP server decoding everything from Hex, so you just need to encode it. Here is how to upload using different tools for encoding in Hex
( sleep 1 && xxd -p /path/to/file | tr -d '\n' ) | telnet oshi.at 7779
( sleep 1 && perl -ne 'print unpack "H*", $_' /path/to/file ) | telnet oshi.at 7779
( sleep 1 && hexdump -ve '1/1 "%.2x"' /path/to/file ) | telnet oshi.at 7779
( sleep 1 && od -v -t x1 -An /path/to/file | tr -d '\n ' ) | telnet oshi.at 7779
We use sleep for telnet because unlike netcat, it has no -q option to receive data from server after sending eof
thus it might close the connection immediately after sending the data without receiving a response from us.
However, sleep may not be needed when sending big files.
curl https://oshi.at/hashsum/somefile
curl https://oshi.at/a/somefilemanageid
curl https://oshi.at/a/somefilemanageid/delete
curl -X DELETE https://oshi.at/a/somefilemanageid
.png
(any extension can be appended independently of the actual MIME type, this also skips automatic redirection for images/videos)
/anyname.jpg
(any filename can be appended in case short URL mode is enabled)curl -T file `curl https://oshi.at/onion` --socks5-hostname 127.0.0.1:9050
This service allows HTTP uploads and downloads without SSL/TLS encryption in order to cover some rare use cases. From a simple need to download something on Windows XP or other ancient OS to various research purposes.
The following requests are accepted to bypass HTTPS redirection:
GET http://oshi.at/nossl
(main page)GET http://oshi.at/nossl/somefile
(downloads)POST http://oshi.at/nossl
(uploads via browsers and libraries)PUT http://oshi.at/nossl/
(uploads via PUT like curl -T)