본문 바로가기

웹 해킹

(28)
CSS Injection 보호되어 있는 글입니다.
URL 이중인코딩 https://webhacking.kr/challenge/web-11/ Challenge 26 webhacking.kr관련 문제 view-source   한 번 인코딩된 문자열 검사:문자열: %61%64%6d%69%6epreg_match("/admin/", "%61%64%6d%69%6e")는 %61을 a, %64를 d, %6d를 m, %69를 i, %6e를 n으로 인식합니다.따라서, %61%64%6d%69%6e는 admin을 포함한다고 인식하여 "no!"를 출력하고 종료합니다.이중 인코딩된 문자열 검사:문자열: %2561%2564%256d%2569%256epreg_match("/admin/", "%2561%2564%256d%2569%256e")는 %25를 %로 인식하고, 뒤에 오는 61은 그대로 61로 ..
SSTI 개념 정리 | simple-ssti SSTI 취약점이란? 서버 측 템플릿 엔진에서 템플릿을 렌더링하는 과정에서 발생할 수 있는 취약점입니다. 이 취약점은 공격자가 임의의 입력을 통해 템플릿 엔진에 악성 코드를 삽입하고, 이를 통해 서버 측에서 임의의 코드를 실행할 수 있게 됩니다.  렌더링(Rendering)은 템플릿 엔진이나 브라우저가 데이터를 받아서 최종적으로 사용자에게 보여줄 형식으로 변환하는 과정을 말합니다. 웹 개발에서 렌더링은 주로 HTML, CSS, JavaScript 등의 데이터를 사용자에게 시각적으로 보여주는 역할을 합니다. 템플릿 엔진은 동적 웹 페이지를 생성하기 위해 템플릿 파일을 데이터와 결합하여 최종 HTML 페이지를 만드는 도구입니다.  참고자료https://core-research-team.github.io/20..
LORD OF SQLINJECTION - ORGE 그냥... 갑자기 풀어봤다 query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) echo "Hello {$result[id]}"; $_GET[pw] = addslashes($_GET[pw]); $query = "select pw from prob_orge where id='admin' and pw='{$_GET[pw]}'"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if(($result['pw']) && ($result['pw'] == $_GET['pw'])) solve("orge"); highligh..
민간 교육기간 홈페이지 모의해킹 프로젝트 보호되어 있는 글입니다.
[주통기 웹 취약점] 경로 추적, 위치 공개 경로 추적 : 사용자의 입력 데이터가 적절한 검증 없이 URL이나 파일 경로 파라미터에 사용될 경우 중요한 파일 또는 디렉터리에 접근할 수 있는 취약점이다. ../와 같은 상대경로를 계속해서 입력해 가면서 정보가 탈취할 수 있을 때까지 공격자가 입력이 가능하면 해당 취약점이 존재한다고 볼 수 있다. 특히 웹 루트 디렉터리보다 상위 디렉터리에 접근이 가능한 경우 취약하다고 판단한다. [보안 방법] * 웹 사이트에서 접근하려는 파일이 있는 디렉터리에 chroot 환경 적용 시 경로 추적 공격을 최소화할 수 있음 +) 공격에 사용할 수 있는 인코딩 및 문자 ※ URL 인코딩: .(%2e), /(%2f), \(%5c) ※ 16bit 유니코드 인코딩: .(%u002e), /(%u2215), \(%u2216) ※ ..
[주통기 웹 취약점] 프로세스 검증 누락, 관리자 페이지 노출 프로세스 검증 누락 : 인증이 필요한 모든 페이지에 대해 접근제어가 미흡하여 비인가자가 접근할 수 있는 취약점 공격자는 중요 페이지에 접근해서 정보를 변조하거나 탈취 할 수 있다. +) 여기서 헷갈리는 점이 생겼다. 그럼 불충분한 인증, 인가와 프로세스 검증 누락은 어떻게 구별하지? 찾아보니 아래와 같이 정리할 수 있다. 불충분한 인증 : 개인정보 수정 시 PW확인이 없는 경우 불충분한 인가 : 민감 데이터나 기능에 접근 권한이 없는 경우 (행위 위주의 느낌) 프로세스 검증 누락 : 민감 페이지 접근이 가능한 경우 (페이지 자체) => 대부분 URL 조작을 통해 접근한다. 사실 이런건 취약점을 찾는 사람이 어떻게 분류하냐에 따라 다르긴 하다. 뭐가 되었든 취약점에 대한 설명만 제대로 할 수 있으면 된다...
[주통기 웹 취약점] 자동화 공격 자동화 공격 : 웹 애플리케이션의 특정 프로세스에 자동화 공격 수행 시 요청이 통제되지 않고 수많은 프로세스가 실행되는 취약점 자동화 공격은 Dos, 무차별 대입 공격 뿐만 아니라 다량의 패킷을 요청하는 Blind SQL Injection의 자동화 공격을 수행하는 데 사용될 수 있다. [보안 방법] - 로그인 시도, 게시글 등록, SMS 발송 등에 대한 사용자 요청이 일회성이 될 수 있도록, 캡차(이미지를 이용하여 확인 값을 표시하고 사용자가 값을 등록하여 인증함) 등 일회성 확인 로직을 구현하여야 함 - 자동화 공격을 시도하면 짧은 시간에 다량의 패킷(양)이 전송되므로 이를 공격으로 감지하고 방어할 수 있는 IDS/IPS 시스템을 구축하여야 함. 서버에 요청되는 패킷(양)의 모니터링이 불가능한 경우 적..