FTP, NLST does not supports wildcards

 
open 아이피 포트번호
아이디
비밀번호
prompt
bin
hash
cd /MEDIA
mget *.jpg
mdelete *.jpg
bye

e:\dn.ftp

@echo off
e:
cd \
ftp -s:e:\dn.ftp
:DONE

e:\dn.bat

이런식으로 배치파일로 ftp에 접근해서 특정 폴더의 모든 파일을 받아오려고 하는데,

nlst does not supports wildcards
200 Binary type set
원격 파일 목록을 찾을 수 없습니다.

라는 오류 메세지가 뜬다.

NLST는 Name List의 약자인 ftp 명령으로,
서버측에서 해킹등의 문제때문에 막고 있는듯...

anonymous 계정도 아닌데, 이럴 필요가 있을까 싶다.
내쪽에서 해결할수 있는 문제는 아니고, 서버쪽 프로그램이 문제인듯 한데,
호스팅 업체에게 문의를 해봐야 할 문제인듯...

보안 권고문
마이크로소프트 IIS FTP 서버 NLST 스택 버퍼 오버플로우 취약점 권고

IIS FTP 서비스가 불필요하다면, 서비스 비활성화를,
만일 IIS FTP 서비스가 필요하다면,
익명 사용자(Anonymous)를 포함하여 FTP 사용자의 쓰기 권한을 제거하시길 권고드립니다.

[CVE-2009-3023, CVE-2009-2521] Microsoft Internet Information Server (IIS) FTP server NLST stack buffer overflow

□ 영향
    - 영향 받는 시스템 상에서 원격 공격자가 악의적인 코드 실행 및 서비스 거부 공격(DoS) 가능.

□ 설명
    - 영향을 받는 IIS 서버 상에서 익명 사용자의 쓰기 권한이 설정되어 있을 때, 악의적으로 조작된 디렉토리명을
       IIS의 FTP NLST(Name List) 명령에서 호출하게 되고, 이때 IIS FTP 서버가 이를 적절히 해석하지 못함으로써,
       결과적으로 스택 오버 플로우가 발생됨.

□ 영향 받는 소프트웨어
    - FTP 서비스가 활성화된 Microsoft IIS v5.0, v5.1과 v6.0
    - Microsoft IIS v7.0은 원격 코드 실행 취약점은 없으나 서비스 거부 공격은 가능함.

□ 위험 정도
    - Exploit 공개 여부: 공개됨
    - 위험 정도: Risk

□ 해결책
    - zero-day 취약점으로 현재 관련된 패치 없음.
    - FTP 서비스가 필요하지 않은 경우, 비활성화해야 함.
    - FTP 서비스가 필요한 경우, 익명 사용자(Anonymous)를 포함한, FTP 사용자에게
      디렉토리 쓰기 권한을 허용하지 말 것.
    - 영향받지 않는 버젼인 v7.5로 업그레이드
 
□ 참조 사이트
    - https://www.kb.cert.org/vuls/id/276653
    - http://www.milw0rm.com/exploits/9541
    - http://www.microsoft.com/technet/security/advisory/975191.mspx
    - http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3023