`
[=] Affected software :
Name : Kojoney
Description : Low interaction SSH honeypot
Version : < 0.0.4.2
Service : TCP/22
[=] Patched version :
http://sourceforge.net/projects/kojoney/files/kojoney-0.0.4.2.tar.gz/download
[=] Technical details :
Emulation of the wget and curl commands is made via calls to
urllib.urlopen(url). The only sanity check is the following :
if url.find("://") == -1:
url = "http://" + url
This will catch some attempts to access local files like
"file:/etc/hosts" but requesting "file://localhost/foo/bar" is still
possible.
Under Linux, this can be used to access "file://localhost/dev/urandom".
The kojoney.py process will then use 100% of CPU and will grow in
memory, until killed by the kernel OOM Killer.
[=] Note :
When exploiting urlopen() related vulnerabilities in Python
applications, some little known features can come handy :
data://,HelloWorld
=> returned value is "HelloWorld"
data:text;base64,WDVPIVAlQEFQWzRcUFpYNTQoUF4pN0NDKTd9JEVJQ0FSLVNUQU5EQVJELUFOVElWSVJVUy1URVNULUZJTEUhJEgrSCo=://a
=> returned value is the EICAR test string
And yes, these strings too bypass the "://" Kojoney check ;-)
Nicob
`
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation