SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
SWIFT를 이용한
방글라데시 중앙은행
해킹 사례
전자금융보안론
정보보호대학원 정보보호학과
박지수
Contents
 주요 용어
 사고 개요
 상세 사고 분석
1. 주요 용어
• SWIFT (Society for Worldwide Interbank Financial Telecommunication)
• 표준화되고 신뢰된 국제 금융거래 네트워크
• 200개 이상 국가, 11,000개 금융기관에서 사용하는 SW와 서비스 제공
• Federal Reserve Banks(미국연방준비은행)
• 미국 연방준비제도의 연방 은행으로 총 12개의 연방 은행이 있으며
New York 은행이 가장 큰 규모 은행
2. 사고 개요
Rizal Commercial
Banking Corporation
Pan Asia
Banking Corporation
Bangladesh Bank
Federal Reserve Bank
of New York
SWIFT “$951 million / 35” $81 million
Result
1 2
3
4
1. Federal Reserve Bank에 $951 Million을 Rizal, Pan Asia에 이체하라는
35건 의 요청 전송
2. SWIFT 코드 확인 후 의심없이 5건의 이체 진행
3. 스리랑카 수신 계좌 이름에 오타 발견(foundation  fandation) 후
요청 확인을 전송했지만 Bangladesh Bank는 확인하지 못함
4. $81 Million은 이미 필리핀 Rizal Bank로 이체되어 인출해 감
5. 스리랑카 Pan Asia로 이체된 $20 Million은 다시 되찾음
각 지역이 주말이라 연락이 불가능 함을 악용하여 시간을 지체시킴
• 공격자는 총 $951 million을 훔칠 계획
• 2015년 5월 필리핀 Rizal 은행 마닐라 지점에 4개의 계좌 개설하여 범행을 준비
• 2016년 2월 4일 방글라데시 은행 이름으로 10억 달러를 Rizal Bank와 Pan Asia은행으로 이체하라는 35건의 이체 요청이 전달됨
• Fed Bank of NY는 의심없이 5건 승인
• 스리랑카 은행 수신 계좌로 제시한 비정구기구(NGO) 이름에 오타를 발견(foundation -> fandation) , 돈세탁 경보 발령, 나머지 계좌
요청 모두 거부
• 2016년 2월 5일 (금) 오전 SWIFT 내역 확인 불가능 :
• 매일 자동으로 SWIFT 내역을 출력해주는 24시간 동작하는 프린터까지 장악하여 이체 사실을 인지하는 시간을 지연시킴
• 다음날 재부팅 시켜 정상 작동시킴, 의심스러운 내역들이 출력됨
• Federal Reserve Bank of New York이 방글라데시 은행에 이체를 확인하는 질의(Query)를 보냈지만 아무도 확인할 수 없었음
• 방글라데시 은행은 사고 발생 인지 후 Fed Bank of NY와 SWIFT에 연락했지만 주말이라 아무도 연락이 되지 않았음
• 스리랑카 Pan Asia 은행으로 간 20m은 되찾았지만 Rizal 은행으로간 81m은 이미 카지노
2. 사고 개요
Rizal Commercial
Banking Corporation
Pan Asia
Banking Corporation
Bangladesh Bank
Federal Reserve Bank
of New York
SWIFT “$951 million / 35” $81 million
Result
1 2
3
4
• 공격자는 총 $951 million을 훔칠 계획
• 2015년 5월 필리핀 Rizal 은행 마닐라 지점에 4개의 계좌 개설하여 범행을 준비
• 2016년 2월 4일 방글라데시 은행 이름으로 10억 달러를 Rizal Bank와 Pan Asia은행으로 이체하라는 35건의 이체 요청이 전달됨
• Fed Bank of NY는 의심없이 5건 승인
• 스리랑카 은행 수신 계좌로 제시한 비정구기구(NGO) 이름에 오타를 발견(foundation -> fandation) , 돈세탁 경보 발령, 나머지 계좌
요청 모두 거부
• 2016년 2월 5일 (금) 오전 SWIFT 내역 확인 불가능 :
• 매일 자동으로 SWIFT 내역을 출력해주는 24시간 동작하는 프린터까지 장악하여 이체 사실을 인지하는 시간을 지연시킴
• 다음날 재부팅 시켜 정상 작동시킴, 의심스러운 내역들이 출력됨
• Federal Reserve Bank of New York이 방글라데시 은행에 이체를 확인하는 질의(Query)를 보냈지만 아무도 확인할 수 없었음
• 방글라데시 은행은 사고 발생 인지 후 Fed Bank of NY와 SWIFT에 연락했지만 주말이라 아무도 연락이 되지 않았음
• 스리랑카 Pan Asia 은행으로 간 20m은 되찾았지만 Rizal 은행으로간 81m은 이미 카지노
3. 상세 사고 분석
SWIFT Alliance SW
Server
CONFIG FILE
gpca.dat
3. 상세 사고 분석
SWIFT SW와 함께 동작하는 Main file로 추정
Malware Sample
 악성코드는 Oracle DB를 사용하는 SWIFT Alliance SW 운영 환경에 스스로 서비스로 등록한 후 동작함
 주요 목적은 설정 파일에 정의된 SWIFT 문자열을 검사하는 것
 문자열 검사를 통해 공격자는 Field 추출 가능 (예: 전송 관련 정보, 시스템 DB와 연결된 SWIFT 주소 등)
 추후 해당 정보는 특정 거래를 삭제하거나 특정 계좌의 출력정보를 수정하는데 사용할 수 있음
 해당 기능은 2016년 2월 6일 06:00 까지 동작하도록 제작 되어있음
 SWIFT SW에 대해 높은 수준의 이해와 지식을 갖고있는 사람이 개발한 것으로 추정
3. 상세 사고 분석
Malware Config and Logging
 Malware가 실행되면 RC4 Key를 사용하여 설정 파일을 복호화함
 피해자 기기의 다음과 같은 경로에 설정 파일이 존재
 설정 파일은 거래 ID, 추가적인 환경 정보, 다음과 같은 IP 주소(C&C) 등을 포함하고 있음
 다음과 같은 파일에 기록
3. 상세 사고 분석
SWIFT Alliance SW
Server
Server의 모든
Process 감시
Liboradb.dll이 로드된
Process 확인
2byte opcode 수정 검증과정 우회
DB transaction
실행 / 조작 가능
• DB 실행
• 백업 및 복구 기능
• 레지스트리로 부터 DB 경로 읽기
3. 상세 사고 분석
Module Patching
 Malware는 Process에 liboradb.dll이 로드되는 경우 특정 offset의 2byte를 변경 시킴
 0x75, 0x04  0x90, 0x90
 0x75, 0x04 는 ‘JNZ’ 라는 opcode :
If the result of the previous comparison operation is not zero, then jump into the address that follows this
instruction, plus 4bytes
조건 Jump 명령어로 해당 모듈에서는 키 유효성 검사, 허가 성공 유무 확인 과정과 같은 중요한 기능을
실행하는 명령어로 이동 시킴
 0x90은 ‘NOP’ opcode : do nothing으로 아무것도 실행하지 않는 명령어
 liboradb.dll은 SWIFT Alliance SW에 사용되는 모듈로
레지스트리로부터 Alliance DB 경로를 읽기, DB 실행, DB 백업 및 재설치 기능 수행
3. 상세 사고 분석
Module Patching
Malware 실행 전
Malware 실행 후
3. 상세 사고 분석
SWIFT message monitoring
 Malware는 SWIFT Financial Application 메시지를 관찰 (아래 디렉토리에 위치한 *.prc, *.fal 파일의
내용을 분석하면서)
 gpca.dat에 정의된 문자열을 찾으면서 분석하다 문자열이 존재하는 경우 아래와 같은 하드코딩된
문자열을 검색하여 MESG_TRN_REF, MESG_SENDER_SWIFT_ADDRESS를 추출
 추출한 데이터를 활용하여 SWIFT 고유의 메시지 ID를 검색하는 SQL 명령어를 작성
 알아낸 MESG_S_UMID는 Local DB의 거래 정보를 삭제하는 명령어에 사용
3. 상세 사고 분석
Login Monitoring
 ‘Login’ 문자열을 포함하는 업무 기록을 지속적으로 확인
 ‘Login’ 검색 실패한 경우 5초 동안 멈추고 재시도
 ‘Login’ 검색 성공한 경우 Malware가 원격 C&C에 GET request 전송
 “---O” : Login (open), “---C” : Logout (close), “---N” : Neither of the events occurred
3. 상세 사고 분석
Manipulating Balances
 Malware는 아래 경로에 존재하는 SWIFT 메시지를 모두 관찰
3. 상세 사고 분석
Manipulating Balances
 Malware는 다음 문자열을 찾으면서 분석
62F : closing balance(결산잔고), 60F : opening balance(개시잔액)
19A : transaction amount
3. 상세 사고 분석
Manipulating Balances
 로그인 한 계정은 Convertible Currency 가용량(MESG_FIN_CCY_AMOUNT)을 확인하는데 사용
 임의의 값으로 변경(SET MESG_FIN_CCY_AMOUNT)하여 메시지 내의 Convertible Currency를 조작
3. 상세 사고 분석
Printing Manipulation
 SWIFT는 확인 메시지를 생성하고 프린터를 통해 자동으로 출력하기 때문에 DB와
Message 조작으로는 거래 조작을 숨기기 힘듦, 따라서 프린터도 제어 필요
 Malware는 SWIFT 확인 메시지를 가로채어 조작된 메시지로 전송
 SWIFT 메시지는 읽고 분석되어 PCL(Printer Command Language)로 표현된 PRT파일로
변환됨
 PRT 파일은 ‘nroff.exe’라는 정상적인 SWIFT 실행파일을 통해 프린트되도록 전송됨
 작성된 PCL 언어를 통해 프린터 모델을 확인할 수 있음 “HP LasesrJet 400 M401”
Reference
• http://baesystemsai.blogspot.kr/2016/04/two-bytes-to-951m.html
• http://baesystemsai.blogspot.kr/2016/05/cyber-heist-attribution.html
• https://www.wired.com/2016/05/insane-81m-bangladesh-bank-heist-heres-know/
• http://news.chosun.com/site/data/html_dir/2016/05/11/2016051101382.html
SWIFT를 이용한
방글라데시 중앙은행
해킹 사례
전자금융보안론
정보보호대학원 정보보호학과
박지수
jisoo8881@korea.ac.kr

Mais conteúdo relacionado

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례

  • 1. SWIFT를 이용한 방글라데시 중앙은행 해킹 사례 전자금융보안론 정보보호대학원 정보보호학과 박지수
  • 2. Contents  주요 용어  사고 개요  상세 사고 분석
  • 3. 1. 주요 용어 • SWIFT (Society for Worldwide Interbank Financial Telecommunication) • 표준화되고 신뢰된 국제 금융거래 네트워크 • 200개 이상 국가, 11,000개 금융기관에서 사용하는 SW와 서비스 제공 • Federal Reserve Banks(미국연방준비은행) • 미국 연방준비제도의 연방 은행으로 총 12개의 연방 은행이 있으며 New York 은행이 가장 큰 규모 은행
  • 4. 2. 사고 개요 Rizal Commercial Banking Corporation Pan Asia Banking Corporation Bangladesh Bank Federal Reserve Bank of New York SWIFT “$951 million / 35” $81 million Result 1 2 3 4 1. Federal Reserve Bank에 $951 Million을 Rizal, Pan Asia에 이체하라는 35건 의 요청 전송 2. SWIFT 코드 확인 후 의심없이 5건의 이체 진행 3. 스리랑카 수신 계좌 이름에 오타 발견(foundation  fandation) 후 요청 확인을 전송했지만 Bangladesh Bank는 확인하지 못함 4. $81 Million은 이미 필리핀 Rizal Bank로 이체되어 인출해 감 5. 스리랑카 Pan Asia로 이체된 $20 Million은 다시 되찾음 각 지역이 주말이라 연락이 불가능 함을 악용하여 시간을 지체시킴 • 공격자는 총 $951 million을 훔칠 계획 • 2015년 5월 필리핀 Rizal 은행 마닐라 지점에 4개의 계좌 개설하여 범행을 준비 • 2016년 2월 4일 방글라데시 은행 이름으로 10억 달러를 Rizal Bank와 Pan Asia은행으로 이체하라는 35건의 이체 요청이 전달됨 • Fed Bank of NY는 의심없이 5건 승인 • 스리랑카 은행 수신 계좌로 제시한 비정구기구(NGO) 이름에 오타를 발견(foundation -> fandation) , 돈세탁 경보 발령, 나머지 계좌 요청 모두 거부 • 2016년 2월 5일 (금) 오전 SWIFT 내역 확인 불가능 : • 매일 자동으로 SWIFT 내역을 출력해주는 24시간 동작하는 프린터까지 장악하여 이체 사실을 인지하는 시간을 지연시킴 • 다음날 재부팅 시켜 정상 작동시킴, 의심스러운 내역들이 출력됨 • Federal Reserve Bank of New York이 방글라데시 은행에 이체를 확인하는 질의(Query)를 보냈지만 아무도 확인할 수 없었음 • 방글라데시 은행은 사고 발생 인지 후 Fed Bank of NY와 SWIFT에 연락했지만 주말이라 아무도 연락이 되지 않았음 • 스리랑카 Pan Asia 은행으로 간 20m은 되찾았지만 Rizal 은행으로간 81m은 이미 카지노
  • 5. 2. 사고 개요 Rizal Commercial Banking Corporation Pan Asia Banking Corporation Bangladesh Bank Federal Reserve Bank of New York SWIFT “$951 million / 35” $81 million Result 1 2 3 4 • 공격자는 총 $951 million을 훔칠 계획 • 2015년 5월 필리핀 Rizal 은행 마닐라 지점에 4개의 계좌 개설하여 범행을 준비 • 2016년 2월 4일 방글라데시 은행 이름으로 10억 달러를 Rizal Bank와 Pan Asia은행으로 이체하라는 35건의 이체 요청이 전달됨 • Fed Bank of NY는 의심없이 5건 승인 • 스리랑카 은행 수신 계좌로 제시한 비정구기구(NGO) 이름에 오타를 발견(foundation -> fandation) , 돈세탁 경보 발령, 나머지 계좌 요청 모두 거부 • 2016년 2월 5일 (금) 오전 SWIFT 내역 확인 불가능 : • 매일 자동으로 SWIFT 내역을 출력해주는 24시간 동작하는 프린터까지 장악하여 이체 사실을 인지하는 시간을 지연시킴 • 다음날 재부팅 시켜 정상 작동시킴, 의심스러운 내역들이 출력됨 • Federal Reserve Bank of New York이 방글라데시 은행에 이체를 확인하는 질의(Query)를 보냈지만 아무도 확인할 수 없었음 • 방글라데시 은행은 사고 발생 인지 후 Fed Bank of NY와 SWIFT에 연락했지만 주말이라 아무도 연락이 되지 않았음 • 스리랑카 Pan Asia 은행으로 간 20m은 되찾았지만 Rizal 은행으로간 81m은 이미 카지노
  • 6. 3. 상세 사고 분석 SWIFT Alliance SW Server CONFIG FILE gpca.dat
  • 7. 3. 상세 사고 분석 SWIFT SW와 함께 동작하는 Main file로 추정 Malware Sample  악성코드는 Oracle DB를 사용하는 SWIFT Alliance SW 운영 환경에 스스로 서비스로 등록한 후 동작함  주요 목적은 설정 파일에 정의된 SWIFT 문자열을 검사하는 것  문자열 검사를 통해 공격자는 Field 추출 가능 (예: 전송 관련 정보, 시스템 DB와 연결된 SWIFT 주소 등)  추후 해당 정보는 특정 거래를 삭제하거나 특정 계좌의 출력정보를 수정하는데 사용할 수 있음  해당 기능은 2016년 2월 6일 06:00 까지 동작하도록 제작 되어있음  SWIFT SW에 대해 높은 수준의 이해와 지식을 갖고있는 사람이 개발한 것으로 추정
  • 8. 3. 상세 사고 분석 Malware Config and Logging  Malware가 실행되면 RC4 Key를 사용하여 설정 파일을 복호화함  피해자 기기의 다음과 같은 경로에 설정 파일이 존재  설정 파일은 거래 ID, 추가적인 환경 정보, 다음과 같은 IP 주소(C&C) 등을 포함하고 있음  다음과 같은 파일에 기록
  • 9. 3. 상세 사고 분석 SWIFT Alliance SW Server Server의 모든 Process 감시 Liboradb.dll이 로드된 Process 확인 2byte opcode 수정 검증과정 우회 DB transaction 실행 / 조작 가능 • DB 실행 • 백업 및 복구 기능 • 레지스트리로 부터 DB 경로 읽기
  • 10. 3. 상세 사고 분석 Module Patching  Malware는 Process에 liboradb.dll이 로드되는 경우 특정 offset의 2byte를 변경 시킴  0x75, 0x04  0x90, 0x90  0x75, 0x04 는 ‘JNZ’ 라는 opcode : If the result of the previous comparison operation is not zero, then jump into the address that follows this instruction, plus 4bytes 조건 Jump 명령어로 해당 모듈에서는 키 유효성 검사, 허가 성공 유무 확인 과정과 같은 중요한 기능을 실행하는 명령어로 이동 시킴  0x90은 ‘NOP’ opcode : do nothing으로 아무것도 실행하지 않는 명령어  liboradb.dll은 SWIFT Alliance SW에 사용되는 모듈로 레지스트리로부터 Alliance DB 경로를 읽기, DB 실행, DB 백업 및 재설치 기능 수행
  • 11. 3. 상세 사고 분석 Module Patching Malware 실행 전 Malware 실행 후
  • 12. 3. 상세 사고 분석 SWIFT message monitoring  Malware는 SWIFT Financial Application 메시지를 관찰 (아래 디렉토리에 위치한 *.prc, *.fal 파일의 내용을 분석하면서)  gpca.dat에 정의된 문자열을 찾으면서 분석하다 문자열이 존재하는 경우 아래와 같은 하드코딩된 문자열을 검색하여 MESG_TRN_REF, MESG_SENDER_SWIFT_ADDRESS를 추출  추출한 데이터를 활용하여 SWIFT 고유의 메시지 ID를 검색하는 SQL 명령어를 작성  알아낸 MESG_S_UMID는 Local DB의 거래 정보를 삭제하는 명령어에 사용
  • 13. 3. 상세 사고 분석 Login Monitoring  ‘Login’ 문자열을 포함하는 업무 기록을 지속적으로 확인  ‘Login’ 검색 실패한 경우 5초 동안 멈추고 재시도  ‘Login’ 검색 성공한 경우 Malware가 원격 C&C에 GET request 전송  “---O” : Login (open), “---C” : Logout (close), “---N” : Neither of the events occurred
  • 14. 3. 상세 사고 분석 Manipulating Balances  Malware는 아래 경로에 존재하는 SWIFT 메시지를 모두 관찰
  • 15. 3. 상세 사고 분석 Manipulating Balances  Malware는 다음 문자열을 찾으면서 분석 62F : closing balance(결산잔고), 60F : opening balance(개시잔액) 19A : transaction amount
  • 16. 3. 상세 사고 분석 Manipulating Balances  로그인 한 계정은 Convertible Currency 가용량(MESG_FIN_CCY_AMOUNT)을 확인하는데 사용  임의의 값으로 변경(SET MESG_FIN_CCY_AMOUNT)하여 메시지 내의 Convertible Currency를 조작
  • 17. 3. 상세 사고 분석 Printing Manipulation  SWIFT는 확인 메시지를 생성하고 프린터를 통해 자동으로 출력하기 때문에 DB와 Message 조작으로는 거래 조작을 숨기기 힘듦, 따라서 프린터도 제어 필요  Malware는 SWIFT 확인 메시지를 가로채어 조작된 메시지로 전송  SWIFT 메시지는 읽고 분석되어 PCL(Printer Command Language)로 표현된 PRT파일로 변환됨  PRT 파일은 ‘nroff.exe’라는 정상적인 SWIFT 실행파일을 통해 프린트되도록 전송됨  작성된 PCL 언어를 통해 프린터 모델을 확인할 수 있음 “HP LasesrJet 400 M401”
  • 18. Reference • http://baesystemsai.blogspot.kr/2016/04/two-bytes-to-951m.html • http://baesystemsai.blogspot.kr/2016/05/cyber-heist-attribution.html • https://www.wired.com/2016/05/insane-81m-bangladesh-bank-heist-heres-know/ • http://news.chosun.com/site/data/html_dir/2016/05/11/2016051101382.html
  • 19. SWIFT를 이용한 방글라데시 중앙은행 해킹 사례 전자금융보안론 정보보호대학원 정보보호학과 박지수 jisoo8881@korea.ac.kr