Hacker News new | ask | show | jobs
by tpxl 3384 days ago
How can you detect if the output is curl/piped?
3 comments

https://www.idontplaydarts.com/2016/04/detecting-curl-pipe-b...

Summary: Fill your script with an invisible payload that fills any buffers, and put something time consuming (say `sleep 5`) early in your script in order to detect that the script is being executed directly rather than just stored to disk. If the client halts before having read all data, it is likely a `curl | bash` scenario. If it just keeps reading, it's a regular browser just downloading.

I would hazard a guess that curl won't send the standard request headers that browsers would.