검수요청.png검수요청.png

콜드퓨전

해시넷
이동: 둘러보기, 검색
콜드퓨전(Coldfusion) 로고
콜드퓨전(Coldfusion) 로고와 글자

콜드퓨전(Coldfusion)은 웹사이트인트라넷에서 데이터 처리를 위해 사용되는 프로그래밍 언어이다. 서버 사이드 스크립트 언어(server-side script language) 또는 서버 사이드 스크립트(server-side script)라고 하는 스크립트 언어로 분류된다. 1995년 앨라이어 형제가 개발하였고, 2005년 이후 어도비 시스템즈(Adobe Systems)에서 개발하고 있다.

개요[편집]

콜드퓨전은 1995년 얼래어(Allaire)의 제품으로 조셉과 제레미 형제에 의해 발표되었다. 2001년 앨라이어는 매크로미디어와 합병되었고 다시 2005년 어도비 시스템즈로 인수되었다. 콜드퓨전 MX 7 엔터프라이즈 에디션부터 게이트웨이 인터페이스를 통하여 SMS나 인스턴트 메신저와 같은 비동기 이벤트처리를 다룰 수 있는 기능이 추가되었다. 콜드퓨전은 주로 웹사이트나 인트라넷에서 데이터처리를 하기 위해 사용되고 SOAP이나 웹 서비스, 플래시 리모팅과 같은 원격 서비스를 생성하기 위해서 사용되기도 한다. 특히 클라이언트에서 사용하는 플렉스기술과 어울리는 서버 쪽 기술이다.[1]

등장배경[편집]

어도비 콜드퓨전(Adobe ColdFusion)은 1995년 조셉 앨라이어제레미 앨라이어가 만든 상업적인 RAD 플랫폼이다. 최초 개발 의도는 간단히 데이터베이스와 HTML 페이지를 연동하기 위해 설계되었는데 2.0버전부터는 IDE(통합개발환경)와 스크립트 언어를 포함하는 개발 플랫폼으로 거듭나게 되었다.[1]

역사[편집]

  • 1995년 : 앨라이어 콜드 퓨전 버전 1.0이 출시
  • 1996년 : 앨라이어 콜드 퓨전 버전 1.5이 출시
  • 1996년 : 앨라이어 콜드 퓨전 버전 2.0이 출시
  • 1997년 6월 : 앨라이어 콜드 퓨전 버전 3.0이 출시
  • 1998년 1월 : 앨라이어 콜드 퓨전 버전 3.1이 출시
  • 1998년 11월 : 앨라이어 콜드퓨전 버전 4.0이 출시
  • 1999년 11월 : 앨라이어 콜드퓨전 버전 4.5이 출시
  • 2001년 6월 : 매크로미디어 콜드퓨전 버전 5.0이 출시
  • 2002년 5월 : 매크로미디어 콜드퓨전 MX 버전 6.0이 출시
  • 2005년 : 매크로미디어 콜드퓨전 MX 7이 출시
  • 2007년 7월 30일 : 어도비 콜드퓨전 8이 출시
  • 2009년 5월 4일 : 어도비 콜드퓨전 8.0.1이 출시
  • 2009년 10월 5일 : 어도비 콜드퓨전 9이 출시
  • 2010년 7월-13일: 어도비 콜드퓨전 9.0.1이 출시
  • 2012년 5월-15일: 어도비 콜드퓨전 10이 출시

특징[편집]

동적인 데이터의 흐름제어, 논리적인 애플리케이션, 사용자 중심의 인터페이스 상속을 가능하게 하는 Server-side scripts를 태그 기반의 언어진 콜드퓨전 마크업 언어(CFML; Coldfusion Markup Language)을 이용하여 가능하게 합니다. 콜드퓨전 애플리케이션은 XML, EJB, .NET, HTML은 물론 다른 클라이언트 기술을 포함할 수 있다.

콜드퓨전 애플리케이션이 정적인 HTML페이지와 다른점은 다음과 같다.

콜드퓨전의 확장자는 기본적으로 CFM이다.
콜드퓨전 애플리케이션은 CFML(Coldfusion Markup Language)을 포함한다.
  • 직관적인 서버 스크립트 : 강력하면서도 배우기 쉬운 콜드퓨전 스크립팅 환경을 사용하여 동적 인터넷 응용 프로그램을 신속하게 개발할 수 있다. 콜드퓨전 스크립팅 환경에서는 하위 수준 인터넷 프로그래밍 작업이 자동으로 처리되기 때문에 작업 시간을 줄이고 복잡한 업무를 줄일 수 있다는 특징이 있다. HTML이나 ActionScript에 익숙하다면 콜드퓨전에서의 스크립팅 작업이 직관적이며 매우 생산적이라는 사실을 알 수 있다.
  • 데이터 연결 : 고성능 Type IV JDBC 드라이버 및 LDAP 지원을 통해 실질적으로 모든 데이터베이스나 디렉토리 서버에 연결할 수 있다. 웹 서비스나 COM, CORBA 및 JavaBeans/EJB 등 산업 표준 컴포넌트 인터페이스를 통해 레거시 시스템 데이터와 통합된다.
  • 풍부한 인터넷 애플리케이션 : 풍부한 인터넷 응용 프로그램을 통해 보다 나은 사용자 경험을 제공한다. 콜드퓨전 MX에서는 Macromedia Flash Player에 대한 내장된 연결 기능, Macromedia Flash MX 저작 환경 내에서 서버측 ActionScript에 대한 내장된 지원 기능 및 통합된 디버깅 기능을 통해 널리 보급된 Macromedia Flash Player의 강력한 기능을 활용하는 응용 프로그램을 가장 쉽게 개발할 수 있다.
  • 산업표준지원 : XML, 웹 서비스, J2EE/Java, .NET/COM 및 CORBA 등 모든 주요 인터넷 표준 및 컴포넌트 모델을 지원한다. 콜드퓨전 MX는 선두적인 운영 체제, 웹 서버 및 데이터베이스를 지원하므로 IBM WebSphere와 같은 선두적인 Java 어플리케이션 서버에 콜드퓨전 MX를 배포할 수 있다.
  • 동적차트 작성 : 강력한 내장형 차트 작성 엔진을 사용하여 Macromedia Flash, JPG 또는 PNG 형식으로 전문적인 품질의 비즈니스 차트를 생성할 수 있다.
  • XML과 웹서비스 : 내장된 XML 문서 분석 기능, XSL 변형 기능, XML로의 데이터 자동 일련화 기능을 사용하여 XML 데이터와 쉽게 통합할 수 있다. SOAP 기반 웹 서비스를 응용 프로그램과 통합하거나 표준 기반 웹 서비스 엔진을 사용하여 사용자 고유의 웹 서비스를 퍼블리시할 수 있다.
  • 콜드퓨전 컴포넌트 : CFML 페이지, Flash 클라이언트 또는 웹 서비스에서 호출할 수 있는 셀프 문서화, 재사용 가능한 응용 프로그램 컴포넌트를 편리하게 만들 수 있다.
  • J2EE 애플리케이션 서버 배포 : Java 플랫폼의 강력한 기능과 콜드퓨전의 사용 편리성을 결합하였다. 단독(standalone) 콜드퓨전 서버에 콜드퓨전 응용 프로그램을 구축 및 배포할 수도 있고 콜드퓨전 MX for J2EE 애플리케이션 서버 제품군을 사용하여 응용 프로그램을 IBM WebSphere와 같은 선두적인 J2EE 어플리케이션 서버에 배포하는 것도 가능하다.

문제점[편집]

2018년 11월 이미 패치되었던 Adove ColdFusion 서버 임의 파일 업로드 취약점(CVE-2018-15961)의 이용 흔적을 발견했으며, 해커들은 해당 취약점을 악용하여 jsp 스크립트 파일을 업로드하여 원격에서 명령을 실행하였다고 밝혔다. 또한 테스트 결과, 악성코드 스크립트들은 모두 시스템 권한으로 실행되며, 이로서 서버가 완전히 해커에게 장악되며 봇넷이나 마이닝에 악용될 가능성도 존재한다. Adobe ColdFusion에서는 몇 년 동안 끊임없이 고위험 취약점들이 발생하였으며, 이 취약점들은 모두 역직렬화 혹은 임의 명령 실행 취약점들이었다. ColdFusion는 FCKEditor 편집기 대신 CKEditor편집기를 사용하였는데, 이 때문에 파일 확장자를 무시하고 업로드 할 수 있는 취약점이 발생하는 것이다. 해당 취약점은 settings.cfm안에 존재한다. settings.cfm은 cfc,exe,php,asp,cfm,cfml 확장자를 가진 파일들은 업로드를 제한하지만, jsp 확장자에 대해서는 제한하지 않으며, 콜드퓨전이 jsp 압축 해제를 지원한다. 때문에 jsp 악성코드를 이용하여 getshell이 가능한 것이다. 공격자는 POST 패킷을 조작하여 HTTP Request를 통하여/cf_sc ripts/sc ripts/ajax/ckeditor/plugins/filemanager/upload.cfm에 전송하면 임의 파일 업로드가 가능하게 되는 것이다. 이러한 취약점에대해 공격을 방지하기 위해서는 항상 최신 버전으로 유지하는 것이 중요하다.[2] 지속적으로 보안 취약점이 발견되고 있고, 보안 취약점을 발견될때마다 최신 업데이트로 공격을 방지한다.

이번 발견된 취약점(CVE-2018-15961)은 "치명적인 무제한 파일 업로드 버그"라고 불려진다. 발견 당시에는 실제 공격에 활용될 가능성이 낮다는 평가를 받아서 패치에서 우선순위 점수가 2점에 불과했다. 하지만 해커들은 이를 실제 공격에 이용했다. 보안 업체 볼렉시티(Volexity)에 의하면 중국의 APT그룹이 이 취약점을 노리고 차이나 초퍼(China Chopper)라는 오래된 웹셀을 취약한 서보로 업로드하는 것을 목격했다"고 했다. 볼렉시티는 이후 공개적으로 접근 가능한 콜드퓨전 서버들을 조사하기 시작했는데, 상당수 시스템들이 이미 해커들의 침해를 받은 것으로 나타났다. 정부 기관이나, 의료 건강 및 인권 지원 단체가 포함되어 있었다. 일부 공격을 당한 사이트들에서는 핵티비스트 그룹인 아노아고스트(AnoaGhost)의 흔적이 나타나기도 했다. 이들은 인도네시아를 중심으로 활동하는 단체이며, ISIS와의 커넥션이 의심되기도 한다.[3]

현재도 취약점에 대한 패치는 지속적으로 진행되고 있다. 최근 2019년 5월 정기 패치가 발표됐다. 플래시 플레이어(Flash Player)에서의 치명적인 취약점 한 개를 비롯해 아크로뱃(Acrobat) 제품들에서 80개가 넘는 오류들이 다뤄졌다. 그 외에도 여러가지 치명적인 취약점들이 패치됐다. 대부분은 힙 오버플로(heap overflow), 버퍼 관련 오류, 더블 프리(double free), UaF, 타입 컨퓨전(type confusion), 아웃 오브 바운드 라이트(out-of-bounds write)문제들로 나뉘며, 임의 코드 실행으로 이어질 수 있게 해준다고 한다. 그 외에 정보 노출을 야기하는 아웃 오브 바운드 리드(out-of-bounds read) 문제도 다수 포함되어 있었다.[4]

전망[편집]

콜드퓨전의 로드맵은 2012년에 다시 릴리스되어 2022년까지 지원되는 제품 지원을 통해 콜드퓨전12를 통한 제품 개발을 보여준다. 현재 제품 버전 11에 있으므로 어도비가 여전히 향후 개발을 계획하고 있다는 것이다. 또 다른 좋은 신호는 자체 개발 회의에 대한 어도비의 노력이다. 개발 컨퍼런스인 어도비 Max가 웹 개발 및 창의적인 제품에 대한 집중을 중단했을 때 어도비는 2013년에 콜드퓨전 서밋을 시작하여 매년 해당 컨퍼런스를 주최한다. 어도비가 콜드퓨전에 대한 지원을 중단하기로 결정한 경우에도 커뮤니티는 앞으로 몇 년간 실행 가능한 옵션이 될 수 있는 오픈 소스 대안을 여전히 보유하고 있다.

각주[편집]

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 콜드퓨전 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.