지난 과제에 이어 존재하는 여러가지 취약점들 중 실제 실무에서 중요하게 다루는 취약점들에 대해 상세히 알아보도록 하겠습니다.
해당 취약점에 대한 설명과, 해당 취약점을 캡쳐, 그리고 대응방안
웹 서버에 의도하지 않은 파일(내부 문서, 백업 파일, 로그 파일, 압축 파일 등)이 존재할 경우, 공격자가 파일명을 유추하여 직접 접근함으로써 민감한 정보를 획득할 수 있는 취약점
intitle:"index of" "backup.zip


이름, ip 주소, 전화번호, 이메일 등의 정보를 알아낼 수 있다.

웹서버는 개발과 운영 환경을 분리하여 운영 환경에서 소스 코드 수정 또는 테스트 목적의 임시 파일을 생성하지 않도록 한다. 해당 대응방안 같은 경우 전자금융감독 규정에도 명시되어있는 내용이기에, 사실상 법적 요구사항이다.즉, 디폴트로 지켜야하는 항목이지만, 그렇지 않은 경우들도 생각보다 많이 존재한다.
웹 서버의 디렉터리에 존재하는 기본 설치 파일, 임시 및 백업 파일을 조사하여 웹 사용자가 접근하지 못하도록 조치한다.
정기적으로 웹서버의 불필요 파일을 검색하여 제거한다.
회원가입 시 안전한 패스워드 규칙이 적용되지 않아, 취약한 패스워드로 회원 가입이 가능할 경우, 무차별 대입 공격(Brute Force)을 통해 패스워드가 누출될 수 있는 취약점

사용자가 취약한 패스워드를 사용할 수 없도록 패스워드 생성규칙을 강제 할 수 있는 로직을 적용한다.

캡차 사용
자동화된 봇이나 스크립트가 로그인을 시도하는 것을 차단하여 무차별 대입 공격을 방지하는 역할

사용자 본인 확인 과정에서 취약한 프로그램을 악용하여 사용자 정보를 변조할 수 있는 취약점을 의미한다. 이를 통해 관리자로 위장하여 개인정보를 수집하거나, 홈페이지 가입 시 제공하는 포인트 등을 악용하는 등의 공격이 발생할 수 있다.

프록시 설정
먼저, 웹 프록시 프로그램을 설치하고 설정한다. 일반적으로 OWASP ZAP, Burp Suite와 같은 도구가 많이 사용된다. 설정 후, 웹 브라우저의 프록시 설정을 변경하여 모든 HTTP/HTTPS 요청이 프록시 서버를 경유하도록 한다.
실명 인증 웹 애플리케이션 접근
프록시를 통해 실명 정보가 입력되는 웹 애플리케이션에 접근한다. 이 과정에서 발생하는 모든 요청과 응답은 프록시 서버를 통해 모니터링되고 기록된다.
요청 가로채기
사용자가 실명 정보를 제출할 때, 해당 요청을 프록시에서 가로챈다. 이 요청에는 사용자의 실명, 주민등록번호 등의 정보가 포함되어 있다.
데이터 수정
가로챈 요청의 실명 정보를 의도적으로 수정한다. 예를 들어, 다른 사람의 이름이나 잘못된 정보를 입력하는 방식으로 요청을 변경한다.
수정된 요청 전송
프록시를 통해 수정된 요청을 웹 애플리케이션에 전송한다. 원래의 정보 대신 수정된 정보가 서버로 전달된다.
응답 확인
웹 애플리케이션의 응답을 확인하여, 수정된 정보가 정상적으로 반영되는지를 점검한다. 만약 수정된 정보가 성공적으로 반영된다면, 이는 실명 인증 시스템의 취약점이 존재한다는 것을 의미한다.
공격자가 다른 사람의 실명 정보로 계정을 생성하거나 기존 계정의 정보를 변경함으로써, 타인의 신원을 도용하여 금융 거래, 대출 신청, 서비스 가입 등을 시도할 수 있다.
실명 정보를 수정하여 각종 법적 책임에서 벗어나거나 부정한 혜택을 누리는 사례가 발생할 수 있다. 예를 들어, 사회복지 혜택이나 정부 보조금을 부당하게 수령할 수 있다.
피해자의 실명 정보를 이용해 허위 거래를 진행하고, 피해자에게 금전적 손실을 초래할 수 있다. 예를 들어, 허위 상품의 판매나 서비스 제공을 통해 금전을 갈취할 수 있다.
공격자가 자신의 실명 정보를 숨기고 타인의 정보를 사용하면서, 실제 피해자는 자신의 개인정보가 유출되었다는 사실을 알지 못할 수 있다. 이는 피해자에게 심각한 개인정보 침해를 초래한다.
실명 수정으로 인해 법적 문제가 발생하면, 기업이나 기관은 규제 위반으로 인해 벌금을 물거나 법적 책임을 지게 될 수 있다. 또한 고객의 신뢰도 심각하게 손상될 수 있다.
웹 서버가 보안과 관련된 민감한 데이터를 평문(엄호화 되지 않은 ex: http)으로 통신 채널을 통해 송수신할 경우, 통신 채널 스니핑을 통해 인가되지 않은 사용자에게 민감한 데이터가 노출될 수 있는 취약점을 의미한다.
inurl:http/admin


wireshark를 이용한 http 트래픽 필터링

입력한 아이디와 비밀번호가 평문으로 전달되는 것을 확인

웹 서버는 전자서명인증서, SSL, TLS 등을 이용하여 사용자 식별 및 데이터 전송 시, 암호화 통신으로 데이터 전송의 안전성을 확보한다.
홈페이지는 중요정보와 관련된 민감한 데이터(개인정보, 비밀번호 등) 전송 시, 통신채널(또는 전송데이터)에 암호화 적용을 한다.