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

"콜드퓨전"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
잔글
27번째 줄: 27번째 줄:
  
 
== 특징 ==
 
== 특징 ==
쉽고 간단한 데이터베이스 접근
+
동적인 데이터의 흐름제어, 논리적인 애플리케이션, 사용자 중심의 인터페이스 상속을 가능하게 하는 Server-side scripts를 태그 기반의 언어진 콜드퓨전 마크업 언어(CFML; Coldfusion Markup Language)을 이용하여 가능하게 합니다. 콜드퓨전 애플리케이션은 [[XML]], [[EJB]], [[.NET]], [[HTML]]은 물론 다른 클라이언트 기술을 포함할 수 있습니다.
클라이언트와 서버 캐시 관리
 
GUI 위젯폼과 검증기능을 통해 클라이언트에서 사용할 코드를 생성
 
HTML을 PDF나 FlashPaper로 쉽게 변환
 
액티브 디렉터리나 LDAP, SMTP, POP, HTTP, FTP, 마이크로소프트 익스체인지 서버와 같은 기업용 시스템 데이터나 RSS나 Atom과 같은 일반적인 데이터 형식을 다룬다.
 
베리티(Verity)의 검색엔진 K2를 기반으로 파일 인덱스처리나 검색 서비스 제공
 
GUI 관리자 화면
 
Server, application, client, session, request에 대한 변수의 유효범위를 가진다.<ref name ="어도비_콜드퓨전">위키피디아 공식 홈페이지 - https://ko.wikipedia.org/wiki/%EC%96%B4%EB%8F%84%EB%B9%84_%EC%BD%9C%EB%93%9C%ED%93%A8%EC%A0%84 </ref>
 
  
==문제점==
+
콜드퓨전 애플리케이션이 정적인 [[HTML]]페이지와 다른점은 다음과 같다.
*비싸다
+
콜드퓨전의 확장자는 기본적으로 [[CFM]]이다.
*웹사이트를 손상시킬 있으며 파일을 열람하거나 편집할 수 있다.<ref> 보안뉴스, 어도비 콜드퓨전 취약점 이용한 웹 공격 증가 - https://www.boannews.com/media/view.asp?idx=16955</ref>
+
콜드퓨전 애플리케이션은 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에 전송하면 임의 파일 업로드가 가능하게 되는 것이다. 이러한 취약점에대해 공격을 방지하기 위해서는 항상 최신 버전으로 유지하는 것이 중요하다.
  
 
{{각주}}
 
{{각주}}
50번째 줄: 62번째 줄:
 
* [[앨라이어]]
 
* [[앨라이어]]
  
{{프로그래밍 언어|토막글}}
+
{{프로그래밍 언어|검토 필요}}

2019년 8월 20일 (화) 10:22 판

콜드퓨전(Coldfusion)은 웹사이트인트라넷에서 데이터 처리를 위해 사용되는 프로그래밍 언어이다. 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에 전송하면 임의 파일 업로드가 가능하게 되는 것이다. 이러한 취약점에대해 공격을 방지하기 위해서는 항상 최신 버전으로 유지하는 것이 중요하다.

각주

참고자료

같이 보기


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