전체 글
[Suninatas] 3번 문제
공지사항 게시판에 글쓰기 라고 써져있다. 사실 여기서 엄청나게 해맸다..... 알고보니 Suninatas 의 게시판에 글을 쓰라는 것이었다. 이 처럼 글쓰는 페이지가 보이지 않았다. 소스 페이지를 봐도 찾기가 힘들어서 다른 게시판인가해서 FREE 게시판에는 글쓰기가 존재했다. 해당 페이지의 URL를 확인해보니 경로가 /free/write 였다. 혹시하며 notice 페이지로 이동하여 해당 URL 의 뒤에 /write 를 입력하니 해당 페이지가 표시되었다. 내용을 입력하고 SUBMIT 버튼을 누르면 인증코드가 나온다. 글쓰기 버튼이 없어도 예측할 수 있는 경로로 설정해놓으면 접근 할 수도 있는 취약점의 문제인 것 같다.
[Suninatas] 2번 문제
ID 와 PW 입력창만 보이는 간단한 UI이다. 페이지 소스를 확인해보자. 페이지의 하단에 ID 와 PW 가 같으면 공백으로 처리evel 2 ID 와 PW 입력창만 보이는 간단한 UI이다. 페이지 소스를 확인해보자. 페이지 소스 페이지의 하단에 ID 와 PW 가 같으면 알림창과 함께 칸을 공백으로 변환하는 코드이다. 크롬의 개발자 도구에 HTML 코드를 임의로 실행해주는 기능이 있다. 그것을 이용해서 코드를 변환하여 실행해보자. 코드를 복사하여 Console 부분에 함수를 붙여넣고 형광색으로 칠한 부분을 == -> != 으로 변경하여 반대의 코드로 변환하였다. 그리고 같은 ID 와 PW 를 입력하니 AuthKey 값이 나왔다. 처음엔 실패한 줄 알고 계속 시도했었는데 이 값이 맞는 거였다.
[Suninatas] 1번 문제
Suninatas 는 난이도가 쉬운편이라고 하여 차근차근 풀어보려고 한다. Level 1 부터 풀어보겠다. 간단한 PHP 코드가 나타났다. Replace 함수는 문자열을 치환하는 함수이다. Mid 함수는 일정 갯수를 가져오는 함수로 비슷한 함수로 LEFT, RIGHT 함수가 있다. LEFT : 문자에 왼쪽을 기준으로 일정 갯수를 가져오는 함수. {Ex : LEFT(문자, 가져올 갯수)} MID : 문자에 지정한 시작 위치를 기준으로 일정 갯수를 가져오는 함수. {Ex : MID(문자, 시작 위치, 가져올 갯수)} RIGHT : 문자에 오른쪽을 기준으로 일정 갯수를 가져오는 함수. {Ex : RIGHT(문자, 가져올 갯수)} 코드를 해석해보니 admin 이라는 문자열을 체크해야하지만 admin 의 스펠링을..
[Lord of SQL Injection] 3번 문제 goblin
가장 기본적으로 no 에 무작위로 값을 넣어보았다. 우선 guest는 no 번호가 1번으로 설정되어 있나보다. 코드를 보지도않고 우선 union injection 을 시도해보았다. no=0 union select id from prob_goblin where id='admin' 바로 막혀버렸다.. if(preg_match('/\'|\"|\`/i', $_GET[no])) exit("No Quotes ~_~"); 이 부분때문에 쿼티를 사용하여 admin 이라는 문자열을 id로 넘겨줄 수 없었다. no=0 and id=%27admin%27 으로 쿼티를 URL 인코딩을 시도해보아도 서버에서 인증하는 값은 같아서 그런지 막혔다. URL 인코딩을 시도하다보니 HEX 값으로 인코딩하면 될 것 같았다. admin 문자..
웹 공격 분석
Dasan GPON Routers Authentication Bypass CMD Injection - /GponForm/diag_FORM 또는 .html 등의 객체에서 잘못 처리되 인증이 우회되는 취약점 - 취약한 라우터를 검색한 후 URL에 ?images/ 문자열을 추가해 요청 - diag_action = ping 요청의 dest_host 매개 변수에 명령어 삽입 - 라우터는 ping 결과를 /tmp에 저장하고 사용자가 .html, diag_FORM 을 다시 방문 할 때 사용자에게 전송 - 공격 성공시 사용자는 시스템에서 임의의 코드를 실행 CVE-2018-10561 CVE-2018-10562 POST /GponForm/diag_Form?images/ HTTP/1.1 Host: 1.1.1.1 Conte..
[CentOS] 메일 서버 개념과 구축
메일 서비스에 사용되는 프로토콜 - SMTP, POP3, IMAP 등 SMTP(Simple Mail Transfer Protocol, TCP 25) - 메일서버간에 메일 송/수신에 사용되는 프로토콜 POP3(Post Office Protocol 3, TCP 110) - 메일서버에 저장된 메일을 다운로드하는 프로토콜 IMAP(Internet Mail Access Protocol, TCP 143) - 메일서버에 저장된 메일을 접근(Access)하는 프로토콜 메일 송수신 역할에 따른 용어 MUA(Mail User Agent): 사용자를 대신해서 메일 발송/수신 받아주는 프로그램 대표 유틸리티 - Microsoft Outlook (유료). Mozilla Thunderbird (무료) MTA(Mail Transf..
[CentOS] DNS서버 레코드Type 설정, Master/Slave 서버
이전 글에 DNS 서버를 간단히 구축하는 것을 포스팅하였다. 이번에는 DNS의 PTR(역방향), MX(메일서버) 레코드를 지정해보고 서버 2개를 이용하여 ZONE 파일 설정없이 Master 서버에게서 Slave 서버가 DNS 서비스를 제공할 수 있도록 설정 할 것이다. DNS 조회 - 정방향 조회 : nslookup, dig 같은 유틸리티로 도메인을 입력하였을 때 도메인을 -> IP 주소 로 변환하는 것이다. - 역방향 조회 : 역방향 조회는 정방향과 반대로 IP주소를 -> 도메인 으로 변환해는 것이다. MX 레코드 Master/Slave 서버 Master 서버 : DNS 서버를 설정하고 주로 서비스를 하는 서버로서 ZONE 파일을 생성하여 서비스 한다. Slave 서버 : Master 서버의 ZONE ..
[CentOS] 네임서버(DNS) 기본 구축
DNS 서버란? - 웹 브라우저나 FTP 클라이언트를 사용할 때 URL을 사용한다. 실제 원하는 서버에 접근하려면 URL을 해당 컴퓨터의 IP주소로 변환시켜아한다. www.naver.com 같은 도메인을 IP 주소로 변환해주는 서버이다. 도메인 변환 순서 1. Web Browser, Command에 도메인네임을 입력한다. www.nate.com, http://www.nate.com 2. /etc/host.conf (hosts참조, DNS질의) 우선순위 hosts, bind 2-1. hosts : /etc/hosts 파일을 우선 참조하여 해석 2-2. bind : /etc/resolv.conf 파일에 저장된 nameserver에게 질의 3. /etc/hosts 을 참조하거나 /etc/resolv.conf ..
[Network] 라우팅 프로토콜(RIPv2, EIGRP, OSPF)
라우터의 역할 - 수신한 패킷의 목적지 네트워크 계층 주소를 참조하여 전송 시키는 장비이다. 스위치와 라우터의 차이 항목 스위치 라우터 동작 계층 L2 L3 주용도 LAN 연결 WAN 연결 패킷 전송 영역 동일 서브넷 다른 서브넷 전송 시 참조 DB MAC 주소 테이블 라우팅 테이블 DB 생성/유지 트랜스패런트 브리징 라우팅 프로토콜 패킷 루프 방지 STP/RSTP/MSTP 라우팅 프로토콜 전송 시 참조 필드 MAC 주소 IP/IPv6 주소 브로드캐스트 패킷 플러딩 차단 멀티캐스트 패킷 플러딩 차단 목적지를 모를때 플러딩 차단 패킷 처리 속도 빠름 느림 디스턴스 벡터(distance vector) - 라우팅 정보 전송 시 목적지 네트워크와 해당 목적지 네트워크의 메트릭(metric) 값을 알려준다. 메트..
[Network] STP 프로토콜
STP[Spanning Tree Protocol] 이란? - 스위치에서 이더넷 프레임의 루핑을 방지해주는 프로토콜 - IEEE 802.1D 스패팅 트리 포트 상태 - 차단, 청취, 학습, 전송 및 비활성 상태로 분류한다. 차단 (Blocking) >>>>>> 20초 지연 청취 (Listening) >>>>>> 15초 지연 학습 (Learning) >>>>>> 15초 지연 전송 (Forwarding) 속도별 STP 경로값 속도(bandwidth) 경로값(path cost) 10Mbps(이더넷) 100 100Mbps(패스트 이더넷) 19 1Gbps(기가비트 이더넷) 4 100Gbps(10 기가 이더넷) 2 루트 스위치 결정 우선순위 1. 경로값의 합이 작은 스위치의 포트 2. 브리지 ID가 낮은 스위치의 포..