2024 SWLUG 37

8. 사물인터넷의 경량 IP 카메라 취약점을 이용한 해킹 공격 및 대응 방안

해킹 공격에 사용되는 쇼단(Shodan)과 서비스 거부 공격쇼단(Shodan)을 이용한 사물인터넷 기기 정탐쇼단합법적인 웹 기반 서비스로 이용자는 인터넷에 연결된 네트워크 연결 상태, IP주소, 서버의 종류와 같은 장치의 정보를 검색할 수 있음인터넷에 연결되어 있는 장치의 취약점을 알려주어 보안에 대해 위험성을 알릴 수 있음-> 이 정보들이 기기에 직접적인 보안 위협을 가하지 않을 수 있지만 이를 악용할 수 있다는 점이 문제이다. 쇼단은 공격자들에 의해 악용되어 기기의 정보나 콘텐츠가 유출되기도 하고, 2차 보안 공격에 활용하기 위한 정탐 도구로도 활용될 수 있다.위의 그림은 저자들의 소속 기관 이름을 쇼단에서 검색한 결과이다. 그림의 A 부분은 검색된 기기의 기본 정보, B 부분은 접속 가능한 포트 번..

5주차_웹해킹 수업 정리

Authentication Bypass(인증 우회) 실습 내용 정리개발자가 예상하지 못한 데이터로 공격해 인증 로직을 통과하는 방법으로 주로 우회한다. 2FA Password Reset 문제는 실제 PayPal에서 발견된 인증 관련 취약점을 모티브로 제작된 문제이다.보안 질문에 대한 답변을 인증하는 로직을 우회하여 해결할 수 있다. 우선 보안 질문에 대한 답을 모르니까 임의의 값을 아래와 같이 입력 후 제출하였다.그 다음 버프 스위트의 [HTTP history]로 이동하여 /WebGoat/auth-bypass/verify-account에 보낸 HTTP 요청 내용을 확인한다. -> PayPal 사건과 같은 공격 방식request에서 우클릭 후 send to intruder를 클릭한다. clear 후 sec..

AWS 아키텍처 정리

AWS 아키텍처지금까지 실습한 AWS 아키텍처를 정리하면 아래와 같다.AWS 클라우드 상에서 DVWA 서버를 호스팅하기 위해 구성된 네트워크 환경CloudFormation stack을 통한 아키텍처를 구축 전체적인 흐름1. CloudFormation을 통한 아키텍처 구축  2. 실습자의 노트북에서 인터넷을 통해 DVWA 서버에 접근  3. 트래픽은 ALB를 거쳐 DVWA 서버로 전달되며, 이 과정에서 WAF가 악의적인 요청을 필터링  4. WAF의 로그는 Kinesis Firehose를 통해 S3 버킷에 저장되어 분석 가능 아키텍처 구성VPC(Virtual Private Cloud)독립적인 가상의 네트워크 공간으로 사용자의 설정에 따라 자유롭게 구성할 수 있는 공간사용자는 서브넷 생성, 라우팅 테이블, ..

4주차_웹해킹 수업 정리

XSS 모의해킹 실습 정리7번개발자가 의도하지 않은 alert나 console.log 함수를 실행하여 문제를 해결한다.일단 문제를 들어가면 위의 그림과 같이 나오는데 구매 버튼을 클릭해본다. Enter your credit card number에 입력된 카드 번호가 그대로 응답이 되고 있다. XSS는 공격 구문을 포함하여 보낸 요청 서버에서 그대로 응답 본문에 추가할 때 주로 발생되는 취약점으로 아래와 같이 구문을 포함하여 공격한다.Enter your credit cared number 입력칸에 "" 와 같이 script 태그를 이용해 alert(1) 함수를 실행하는 공격 구문을 추가한 후 구매 버튼을 클릭하면 XSS 공격에 성공하여 개발자가 의도하지 않은 alert(1)이 실행된다. 10번이번 문제는 ..

7. IoT 환경에서 안전한 통신을 위한 인증 및 그룹 키 관리 기법

Internet of Things(IoT)사물인터넷은 디바이스들에 네트워크 연결 기능을 내장하여 사람과 사물, 사물과 사물 등을 인터넷에 연결하여 무선 네트워크를 통해 사물을 연결하여 통신하는 기술. 네트워크를 통해 통신 가능한 모든 디바이스를 일컫는다. 네트워크가 가능한 무선 센서모바일 장비홈 네트워크에 사용되는 디바이스웨어 러블 디바이스 -> 각각 고유의 IP Address를 통해 인터넷에 연결되고 있음 대부분 이러한 사물인터넷 디바이스들은 24시간 네 트워크에 연결되어 있고, 기존 PC나 모바일 디바이스와 다르게 메모리나 파워, 연산 능력 등에 한계를 지니고 있어 쉽게 해킹 대상으로 노출되고 있다.  발생 가능한 보안 취약점1. 현재까지 대부분의 사물인터넷 디바이스들은 리눅스 운영체제 기반에서 적절..

AWS WAF를 이용한 방어(심화)

RULE 백업AWS WAF v2 에서 새롭게 제공되는 Rule 설정 방식인 JSON 기반 Rule 생성에 관한 실습이다.간단한 Rule은 AWS 콘솔의 Rule visual editor를 사용하는 것이 가장 간편한 방법이지만, 모든 웹 ACL에는 JSON 형식 표현이 있다.복잡한 규칙의 경우 JSON 편집기를 사용하여 웹 ACL을 관리하는 것이 가장 쉬운 방법JSON 형식의 웹 ACL에 대한 전체 구성을 검색하고 필요에 따라 수정한 다음, 콘솔, API 또는 CLI를 통해 제공새로운 Rule을 작성해보기 전에 현재까지 생성된 Rule 을 JSON 기반 문서로 백업해야 한다.기존의 Rule을 다운로드하기 위하여 Web ACL 의 화면 우측 상단의 “Download web ACL as JSON” 버튼을 클릭..

AWS WAF를 이용한 방어

참고자료https://sessin.github.io/awswafhol/overview.html AWS WAF Workshop실습 개요 본 실습에서는 웹 공격에 취약하도록 의도된 web application ( DVWA ) 에서 AWS WAF 를 통해 웹 공격을 차단하는 방법에 대해 익혀봅니다. 실습은 약 1시간에서 1시간 반 정도 소요되며 크게 5sessin.github.io Custom Rule 추가 1AWS WAF 에서 제공하는 국가별 IP 정보를 기준으로 특정 국가에서 유입되는 트래픽을 차단하는 실습이다.차단 설정을 하기에 앞서 사용자의 PC 에서 발생하는 트래픽이 특정 국가에서 발생되는 것처럼 환경을 설정하기 위하여 Chrome Extension 을 사용한다.   크롬 브라우저에서 Browsec ..

무차별 입력 공격

무차별 입력 공격특정한 암호를 알아내기 위해 공격자가 모든 무작위 값들의 조합을 반복적으로 입력함으로써 해킹을 시도하는 공격 유형1. 크리덴셜 재활용이전에 확보한 사용자 이름과 비밀번호를 이용하는 공격 방법 2. 사전 공격 비밀번호에 이름, 도시, 사물 등의 단어를 사용하는 사람이 많다는 것을 이용하여 사전의 단어를 이용한 무차별 암호 대입 공격 3. 역방향 무차별 암호 대입 공격차별 암호 대입 공격을 역방향으로 시도하는 방식. 하나의 계정에 여러 비밀번호를 입력하는 무차별 암호 대입 공격과 달리, 역방향 무차별 암호 대입 공격은 하나의 비밀번호를 여러 계정에 입력한다.  AWS WAF를 활용한 무차별 입력 공격 실습은 서비스가 종료되었기 때문에 사용자 정의 규칙을 활용한 방어 실습만 진행하였다.    ..

Backdoor

Backdoor 공격백도어 시스템에 액세스하기 위한 정상적인 인증 절차를 무효화하는 우회 접근 유형  백도어 공격 악의적으로 시스템의 백도어를 통해 컴퓨터 시스템이나 암호화된 데이터에 액세스하는 방법 -> 데이터베이스 및 파일 서버와 같은 애플리케이션 내의 리소스에 대한 원격 액세스 권한이 부여되어 원격으로 시스템 명령을 내리고 멀웨어를 업데이트할 수 있다.  유형관리 백도어: 소프트웨어 개발자가 자체 시스템의 다양한 영역에 쉽게 관리 액세스 할 수 있도록 프로그램에 백도어를 포함악성 백도어: 악의적인 목적으로 사이버 범죄자에 의해 만들어진 백도어. 표적 피싱 이메일을 통해 백도어 멀웨어를 설치하는 것 포함우발적 백도어: 인터넷 보안 시스템에 취약점을 남겨두면 오랜 시간 동안 탐지되지 않을 수 있는데 악..

3주차_웹해킹 수업 정리

SQL Injection 심화 실습 주어진 2개의 테이블에 존재하는 모든 데이터를 조회한 뒤, 이를 통해 Dave의 패스워드를 알아내는 실습이다. 임의의 값 asdf를 넣고 Get Account Info를 누르면 실행된 쿼리의 정보가 나타난다.  패스워드 알아내기asdf라는 임의의 값을 입력한 후 이어서 싱글쿼더(')를 입력해 문자열의 범위 벗어나기기존의 쿼리를 종료하기 위해 세미콜론 입력user_system data 테이블의 모든 칼럼에 존재하는 데이터를 조건 없이 조회하기 위해 Select 쿼리를 입력하고 뒤에 주석(--)을 입력해 문법적인 오류가 발생하지 않도록 처리asdf'; select * from user_system_data--Dave의 패스워드를 알아낼 수 있다!    Blind SQL I..