케이쉴드 주니어 9

DBMS 패스워드 복잡도 설정 및 진단 (계정)

패스워드 사용기간 및 복잡도 설정 유무 점검 패스워드 사용기간 및 복잡도 설정을 하고자 한다. 패스워드 사용기간 및 복잡도가 설정이 되어 있지 않는 경우 무작위 대입 공격, 사전 대입 공격등 공격이 발생할 수 있기에 이러한 설정을 적용하여 보안 위험 가능성을 사전에 차단을 할 수 있다.판단기준은 기관에 따라 다르지만 비밀번호 길이(length) 8자 이상, 특수문자 1개 이상, 영어 대소문자 1개 이상, 숫자 1개 이상 의 기준에 따라 양호와 취약의 기준을 나누었다. 비밀번호 유효성 검사 컴포넌트 활성화 여부 확인 비밀번호 유효성 검사 컴포넌트는 mysql에 내장된 보안 플러그(보안 기능)을 말한다. 컴포넌트가 활성화가 되어있는 경우 비밀번호 정책을 자동으로 검사하고 차단을 하기에 가장 먼저 이 플..

Webhacking.kr old 6번 -1분 정리-

첫 화면은 다음과 같다. view-source 링크를 눌러보자 아래와 같은 소스코드를 확인할 수 있다. "); exit;}?>view-source");echo("ID : $decode_idPW : $decode_pw");if($decode_id=="admin" && $decode_pw=="nimda"){ solve(6);}?>  음... 너무 길다 가장 윗줄의 php 코드부터 차근차근  살펴보자    user와 password 쿠키가 없다면  guest와 123qwe 값을 각각 20번 인코딩을 한 후 특수문자를 변경을 한 다음 user 쿠키 값과 password 쿠키 값에 저장을 하게 된다. 그 아래 있는 php 코드를 확인해 보자   음... solve(6) 함수를 실행을 시키면 될 것 같은 느낌이..

Webhacking.kr old 16번 -1분 정리-

화면에서 단서가 없으니 개발자 도구를 열어 코드를 확인해 보자      키보드를 누르게  되면 event.keyCode 인자가 담겨 mv 함수가 작동을 하게 된다. event.keyCode 가 뭘까? 찾아보니 event.keyCode는 키보드 이벤트를 알려주는 속성 중에 하나이고 키보드의 값을 아스키코드로 변경을 해주는 기능을 하는 것을 알 수 있었다.     "w", "a", "d", "s"의 키보드를 눌러보니 코드대로 별이 움직인다.  cd==124에 해당하는 if 문을 작동을 시키고 싶다. 124는 키보드의 어떤 값인지 아스키코드를 보고 확인해보자     124는 키보드의 "|"의 값과 매칭이 되는 것을 알 수 있다. 다시 초기화면에서 "|"을 눌러주면 문제가 풀리게 된다.

Webhacking.kr old 17번 -1분 정리-

문제는 위와 같다! input 칸이 있고 check 버튼이 있다. 안에 아무 숫자를 넣고 check 버튼을 눌러보았다.     "Wrong"  alert창이 뜬게 된다. 개발자 도구를 열어서 코드를 확인해 보자! Function sub() 함수를 살펴보면 login.pw.value(입력창의 값)와 unlock 변수값이 같은 경우 if 문에 걸려 if문 로직이 실행이 되게 된다. 그럼 unlock 변수에 어떤 값이 들어가 있는지 확인해 보자!     콘솔창에서 unlock의 변수의 값을 확인해 보니 7809297.1의 값을 확인가능하다. 콘솔창에서 찾은 unlock변수의 값을 입력창에 넣어보자 그럼 끝!

Webhacking.kr old 14번 -1분 정리-

입력창과 check 버튼이 있다.    입력창에 숫자나 입력을 해보았다. alert 창에 wrong문자가 출력이 되는 것을 확인할 수 있다.   음... 개발자 도구를 열어서 코드를 확인해 보자   입력창 데이터를 입력후 chek 버튼을 누르게 되면 ck()라는 함수가 실행이 된다. ck() 함수에 관한 자세한 로직은 function ck()에서 확인이 가능하다.  코드분석 전에  먼저 document.URL 과 indexOF()에 대해서 자세하게 알아보자 document.URL를 통해서 현재 페이지의 주소를 가져올 수 있고. indexOF() 함수는 indexOF안에 문자가 문자열의 몇 번째에 있는지 알 수 있게 된다. document.URL을 콘솔창에 실행을 해보면 "https://webhacking..

Webhacking.kr Old 1번 - 1분 정리 -

먼저 어디에 힌트가 있는지 찾아보자 view-source 링크를 클릭을 하게 되면 아래와 같은 소스코드 확인이 가능하다.    코드를 확인해보면 php 코드,html 코드 확인가능하다. html에는 딱히 풀 수 있는 단서가 없어보인다. php 코드를 자세하게 보자    위 코드를 보게 되면 user_lv에 1의 쿠키 값이 들어가는 것을 확인할 수 있다. 실제로 user_lv에 1의 쿠키 값이 있는 지 확인해보자    개발자 도구를 열어 쿠키의 값 확인가능하다.     밑에 있는 다른 php 코드를 확인해보면 solve(1); 함수가 숨어있는 것을 찾아볼수가 있다. 이 함수를 작동을 시켜야 할 것 같다는 느낌이 든다. solve(1); 함수의 작동원리를 보면 3보다 크면서 4 미만이어야 solve(1) 함..

HTTP 프로토콜, HTTP Request 1분 정리

HTTP 프로토콜우리가 웹사이트를 사용할 때  컴퓨터 간에 서로 간에 약속된 방식으로 통신을 해야 한다. 한국어를 외국인이 알아듣지 못하는 것처럼 컴퓨터도 서로 간에 약속이 된 방식으로 소통을 해야 통신이 가능해진다. 따라서  웹사이트에서 HTTP프로토콜이라는 개념이 등장을 하게 된다. HTTP 프로토콜이란 컴퓨터끼리 웹서비스를 사용할 때 데이터를 주고 받는 약속이라고 생각을 하면 간단하다. HTTP프로토콜에는 크게 HTTP Request 와 HTTP Response 두 가지가 존재하는데 하나씩 알아보자. HTTP Request는 clinet가 server에게 통신을 하고자 할 때 사용하는 프로토콜이고 HTTP Response은 server가 client에게 통신을 하고자 하는 경우 사용하는 프로토콜이다..

OSI 7 계층이란? + 패킷 분석

OSI 7 계층?osi 7 계층이란 네트워크에서 통신이 이루어지는 과정을 7가지 단계로 나눈것을 의미한다. OSI 7 계층을 알아야 하지?네트워크 통신은 복잡한 방식으로 이루어진다. 7가지 단계로 나우어 네트워크 통신을 바라보게 되면 네트워크에 문제가 발생했을 때 효과적으로 문제를 해결할 수 있기에 네트워크에서 OSI 7계층은 필수적인 개념이다.예를 들어 롤(LOL)을 하고 있는데 갑자기 게임이 멈췄다고 가정을 해보자 그럼 네트워크 상에서 어딘가에 문제가 있다는 것이고 (물론 다른 곳에 문제가 있을 수 있음...) 만약에 나 뿐만 아니라 전세계 사용자가 동시에 게임이 멈췄다고 한다면  OSI 7계층 어플리케이션에 문제가 있다는 것이다.  멈춘 게임을 빨리 하고 싶은 마음에  위해 자신의 컴퓨터 케이블을 ..

공급망 관리와 OT 보안

OT(operation Technology)망이란?산업 공정/기반  시설/ 설비를 바탕으로 한 작업공정을 감시하고, 제어하기 위한 일체의 기술을 그 목적에 맞게 구성한 네트워크를 말한다. 제조부터 유통까지 모든 부분에 OT 망이 있으며 OT 보안이 실패하는 경우 그것이 공급망 관리 실패이다.  예시예를 들어 배터리의 충전상태와 양을 PLC라는 모뎀으로 연결을 해서 특정수준으로는 충전이 되지 않도록 공급이 제어ㅚ는 형태가 많이 논의 되고 있음 그러한 관점에서 PLC에 보안수준이 더 중요해져야 한다.  정치 경제적 이유로 인한 공금항 이슈는 OT보안 실패시 더 심각한 형태로 재현 될 수 있음 전체 생산의 과정에서 사용되는 OT 보안의 실패시 제대로 된 공급이 불가능하고 이로 인해서 다양한 분야의 설비들이 동..