CVE:CVE-2002-0382
CNNVD:CNNVD-200206-052
xchat是一款免费开放源代码的IRC客户端，可运行在Unix、Linux和Microsoft Windows平台下。
xchat对来自IRC服务器上的响应没有正确过滤，可导致任意命令在运行xchat客户端系统上执行。
问题存在于/dns命令处理上，/dsn要解析某人的主机，需要发送"/dns some_nick"命令再执行"%s %s"，xchat通过commond/outbound.c文件中1474行的cmd_dns()函数处理执行"%s %s"：
{
sprintf (tbuf， "/exec %s %s"， prefs.dnsprogram， nick);
handle_command (tbuf， sess， 0， 0);
}
而在cmd_exec()函数1863行存在如下代码：
execl ("/bin/sh"， "sh"， "-c"， cmd， 0);
在执行cmd命令时没有过滤任意字符，可使服务器通过在DNS响应上追加";DISPLAY=localhost:0.0;xterm" 等命令，当命令传递给execl的时候，就会变成"host;DISPLAY=localhost:0.0;xterm"传送给xchat端，而导致此命令在xchat端上执行。
要利用此漏洞需要两个条件：
* 你必须控制服务器进行响应。
* 客户端必须运行/dns命令。
solution:Upgrade xchat xchat to a higher version than 1.89,and avoid the version (,1.89]