반응형

전체 글 259

[webhacking.kr] 1번 문제

webhacking.kr 1번 문제를 클릭하게 되면 다음과 같은 화면이 나타나게 된다. 여기에서 view-source를 클릭해주면 다음과 같은 소스코드를 확인할 수 있다. 해당 PHP 소스를 살펴보게 되면 COOKIE['user_lv']값이 5보다 크면 solve()함수가 동작하지만 6보다 크거나 같다면 COOKIE['user_lv']값이 1로 반환된다고 나와있다. 즉, 쿠키값을 5보다 크고 6보다 작은 수를 넣어주면 문제를 해결하게 된다. 이제 해당 페이지의 쿠키 값을 확인하기 위해 Firefox의 Cookie-Editor를 설치한다. 설치 후, 쿠키 값을 확인해 보면 현재 값이 1로 되어있는 것을 확인 할 수 있다. 이제 이 값을 5.1로 바꿔고 저장한 다음, 새로 고침을 해보면 문제가 해결됬음을 알..

[Web Hacking] WebGoat SQL Injection 문제풀이

해당 문제를 번역해보면 다음과 같다 Q. 아래 양식을 사용하여 users 테이블에서 모든 사용자를 검색하십시오. 전체 목록을 얻기 위해 특정 사용자 이름을 알 필요는 없지만 'Smith'를 사용하여 한 사용자의 데이터를 볼 수 있습니다. 문제에서 Smith라는 단서를 줬다. SQL 쿼리문을 참으로 만들어 Injection을 시도해본다. Smith' or 1=1 -- 를 대입하면 쿼리가 무조건 참이된다. Get Account Info 버튼을 클릭하게 되면 테이블 전체를 응답값으로 받게 된다. 그 다음 문제인 Numeric SQL Injection을 살펴보자. Q. 아래 양식을 사용하여 users 테이블에서 모든 사용자를 검색하십시오. 전체 목록을 얻기 위해 특정 사용자 이름을 알 필요는 없지만 '101'을..

보안 시스템

하나의 보안 시스템으로 모든 것을 방어할 수는 없다. 다양한 보안 시스템을 통해 사이버 보안 체계를 구축해야 한다. 사이버 보안 체계를 구축하기 위한 보안 시스템으로 어떤 것이 있는지 대표적인 보안 시스템을 바탕으로 알아보자. ​ 방화벽 방화벽(Firewall)은 외부로부터 불법적인 접근이나 공격을 방어하기 위해 내부 네트워크와 외부 네트워 크가 연결되는 접점에 구축되는 보안 시스템이다. 방화벽은 보안 정책에 따라 비인가 통신은 차단(Drop)하고 인가된 통신은 허용(Accept)하는 방식으로 외부 네트워크로부터 내부 네트워크를 보호하는, 네트워크 보안에서 가장 기본이 되는 시스템이다. 1세대 방화벽은 OSI 7 계층 중 전송 계층과 네트워크 계층에서 IP 주소, Port 번호를 기준으로 접근을 제어하는..

네트워크 보안 시스템 구축

네트워크를 구성할 때 가장 중요한 것은 24시간 365일 네트워크 장애 없이 운영할 수 있어야 한다는 것이다. 다시 말해, 네트워크에 대한 가용성 보장이 네트워크 구성의 가장 큰 목표다. 이러한 목표를 달성하기 위해서 네트워크를 장애 포인트 없이 구성하는 것과 네트워크 장비들을 이중화하여 하나의 네트워크 장비에서 장애가 발생해도 다른 하나의 네트워크 장비로 가용성을 확보하는 것이 기 본이다. 더 나아가, 네트워크 공격으로 인해 네트워크 장애가 발생할 수 있으므로 네트워크 보안은 네트워크의 가용성을 보장하기 위한 필수 사항이라 할 수 있다. 하지만 대기업이 아니고서는 [그림 2-19]처럼 보안 시스템을 모두 도입해서 운영/관리하기가 쉽지 않다. 이러한 현실의 문제점을 해결하기 위해 오픈소스를 활용하여 주요..

네트워크 장비

네트워크 보안 시스템을 구축하기 위해서는 네트워크 장비들의 역할과 구성을 정확히 알고 있어야 한다. 필자의 경험을 이야기하자면, 네트워크 보안 시스템을 구축하면서 네트워크 장비의 특성을 간과하여 네트워크 접속 과정에서 장애가 발생한 적이 있었다. 그뿐 아니라 보안 시스템을 우회할 수 있는 상황이 발생한 적도 있었다. 그만큼 네트워크 보안 시스템을 구축하려는 사람은 네트워크 장비 에 대해 정확히 이해하고 있어야 한다. 또한, 네트워크 장비의 구성에 대한 이해도 필요하다. 네트워크를 구축하면서 가장 많이 생각하는 것은 어떤 위치에, 어떤 장비를 두고 네트워크를 구성할 것인지에 대한 것이다. 이 고민의 과정에서 라우터, 네트워크 스위치, 허브 등 각종 네트워크 장비에 대한 용어들이 나온다. ​ 라우터 라우터는..

ICMP

ICMP(Internet Control Message Protocol)는 네트워크에서 노드 간에 발생하는 에러 상황이나 통신 제어에 대한 내용을 전달하는 목적의 프로토콜이다. 컴퓨터 네트워크를 접해 본 사람이라면 PING이라는 프로그 램을 알 것이다. 이 PING이 바로 ICMP 프로토콜을 이용하는 프로그램이다. ICMP는 Type 8(Echo Request)의 메시지를 목적지로 보내 정상적으로 도달되면 Type 0(Echo Reply)을 보내 목적지 시스템과 통신이 가능한지를 확인하는 방식으로 작동한다. ​참고문헌 정상근(맥스), 『네트워크 보안 시스템 구축과 보안 관제』, 한빛미디어, 2016, 46쪽

UDP

UDP는 클라이언트가 데이터를 보내도 데이터가 잘 도착하였는지에 확인하지 않으며 패킷을 재전송하거나 흐름 제어도 하지 않는다. UDP는 이렇게 단순한 구조로 통신하기 때문에 신뢰성보다 실시간성을 중요하게 여기는 온라인 게임 등에서 많이 사용되고 있다. ​참고문헌 정상근(맥스), 『네트워크 보안 시스템 구축과 보안 관제』, 한빛미디어, 2016, 46쪽

ARP / RARP

ARP ARP(Address Resolution Protocol)는 OSI 7 계층에서 2, 3계층에 위치한 프로토콜로, IP 주소를 MAC 주소로 변환하여 MAC 주소를 결정하는 역할을 하는 프로토콜이다. ARP 테이블은 캐시 형태로 저장되기 때문에 일정 시간이 지나면 다시 정보를 갱신하게 된다. ​ RARP RARP(Reverse Address Resolution Protocol)는 ARP와 반대의 개념으로 MAC 주소를 통해 IP 주소를 알아내는 프로토콜이며, 많이 사용되지는 않고 있다. 참고문헌 정상근(맥스), 『네트워크 보안 시스템 구축과 보안 관제』, 한빛미디어, 2016, 45쪽

IP

IP(Internet Protocol)는 네트워크 계층(인터넷 계층)에서 사용하는 프로토콜이다. IP는 단말기에서 단말기까 지 어떻게 가야 하는지 그에 대한 주소를 처리하고 IP 주소 분배와 패킷을 처리하는 역할을 한다. IP 주소 체계는 IPv4, IPv6 방식이 있는데, IPv4는 IP 주소를 32비트로 표현하고 ‘.(온점)’으로 구분 하여 0.0.0.0 ~ 255.255.255.255까지 약 42억 개 주소를 사용할 수 있다. 하지만 인터넷에 연결 되는 단말기 수가 급격하게 늘어나는 상황에서 IPv4의 주소가 부족해지자 IPv6가 나타났다. IPv6는 주소 길이가 128비트로 늘어나면서 수많은 디바이스를 수용할 수 있게 되었지만 아직까지 IPv4가 대중적으로 이용되고 있으므로 IPv4를 기준으로 설..

반응형