본문 바로가기

프로그래밍/웹

HTML Application - hta

반응형
HTA는 HTML Application의 약자로 HTML 소스코드나 IE에서 지원하는 VBScript, JScript 등의 스크립트 언어로 
구성된 MS 프로그램이다. HTML 파일의 확장자를 .hta 파일로 변경하면 HTA 파일이 된다. 업무 상 javascript에서 
로컬 프로그램을 실행해야하거나 그 결과를 가지고 추가적인 작업을 해야 할 일이 있을 때 요긴하게 사용된다.

아래 소스코드는 javascript의 ActiveXObject 객체를 통한 파일 핸들링 예제이다. 


확인 버튼을 누르면 Read_file 함수가 호출되고 자바스크립트로 특정 경로에 있는 파일 내용을
알림창으로 띄운 뒤 메모장으로 해당 파일을 열람하는 간단한 예제 코드이다.


 
hta 프로그램을 열면 웹 브라우저가 아닌 애플리케이션 형태로 열리는 것을 확인할 수 있다.
인터넷 익스플로러에서 html 파일로 열었다면 ActivexObject 컨텐츠와 상호작용을 허용해야 Activex 함수를 사용할 수 있다. 
다른 브라우저에서는 ActiveX가 기본적으로 차단되어 별도의 확장 프로그램을 통해서 사용해야한다. 
그리고 브라우저 자체 보안 기능 때문에 실행되는 기능에 한계가 있는데 hta는 이러한 번거로움을 해결한다. 
대신 아무런 보안 기능이 없는 mshta.exe에 의해 실행되기 때문에 악성 스크립트가 포함된 경우 이 또한 실행될 수 있다. 
HTA는 인터넷 브라우저 보안 정책에 영향을 받지 않기 때문에 신뢰할 수 없는 프로그램을 실행할 수 있고 
powershell을 이용하여 로컬 내 파일 목록을 획득하거나 랜섬웨어 공격에 악용되곤 한다. 작업 목적보다 악성코드 
배포용으로 사용되는 사례가 더 많기 때문에 다른 신뢰할 수 없는 사이트에서 이 파일을 다운받는 것은 위험할 수 있다.


반응형

'프로그래밍 > ' 카테고리의 다른 글

스프링 STS 프로젝트 배포하기   (0) 2021.01.11
스프링 STS4 설치 및 프로젝트 생성  (0) 2021.01.10
ajax 개념  (0) 2020.12.20
jsp 개념 및 문법정리  (1) 2020.11.15
이클립스 설치 및 톰캣 연동  (1) 2020.11.14