New Post
-
API testing
1. 정의웹사이트에서 /api를 통해 회원가입, 정보 수정, 조회 및 삭제 등의 여러 주요 기능을 수행하는 경우가 있다. 이때 해당 웹사이트에 API testing 취약점이 존재한다면, 본래 정상적인 웹사이트 접속을 통해서는 인증 및 인가받지 않은 자가 특정 기능을 이용하려고 할 때 이를 제재할 수 있으나 해당 기능이 실질적으로 적용되는 /api에서 HTTP 매소드를 수정하여 무단으로 해당 기능을 이용해 중요 정보를 탈취, 조작 등을 할 수 있게된다.따라서 /api에 반드시 사용해야하는 HTTP 매소드를 제외하고는 허용하지 않아야 하며, 인증 및 인가가 필요한 기능의 경우, /api로 접근하더라도 이를 확인하는 로직을 추가해야 한다. 2. 실습더보기해당 취약점에 대한 실습은 burp suite acade..
2024.12.10
-
CSRF
CSRF이란?CSRF는 관리자의 브라우저가 특정 웹 페이지로 공격자가 원하는 요청을 보내도록 유도하는 취약점이다. 2008년에 발생한 옥션의 개인정보 유출사건도 이 방법을 통한 관리자 계정 탈취 방법에도 사용된 기법으로, 공격의 난이도가 높지 않아 널리 사용되는 방법 중 하나이다. XSS와 차이점XSS클라이언트가 피해 대상으로 주로 공격 대상 사이트의 내부 페이지에서 일어난다.쿠키 및 세션 등 관리자의 정보 탈취, 악성페이지로 유도해 2차 피해 유발을 위해서 주로 사용되는 공격이다.XSS는 사용자의 입력 값 및 페이지 출력 값을 검증하지 않아 페이지 로드 시 악의적인 스크립트가 실행되는 것으로, 악의적인 스크립트를 작성하고 이것을 페이지에 포함시킨 후 실행을 유도하는 공격이다.스크립트 실행 불가 시 공격..
2024.08.25
-
XSS
XSS(크로스 사이트 스크립트)이란?XSS(크로스 사이트 스크립팅)은 웹 페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도하는 취약점으로, 모의해킹/소스코드 진단 시 가장 높은 비율로 탐지되는 취약점이다. XSS가 많이 탐지되는 취약점인 이유는 공격하기 쉽고 광범위한 곳에서 발생할 수 있지만, 완벽하게 방어하기는 어렵기 때문이다. 실습 1 - 을 이용한 XSS보통 XSS 공격은 정상적인 URL 주소(/q3/#1) 뒤에 " '> "를 작성하여 img 소스 작성을 완료시켜주고, 그 뒤에 를 작성하여 변경된 html 소스 코드를 적용시키면 아래와 같이 alert창이 실행되는 것을 확인할 수 있다. 실습 4 - 파라미터 변조를 이용한 XSS (JS 코드 조작) 위의 페이지는 /q4에서 입력창에 ..
2024.08.25
-
Blind SQL Injection
Blind SQL Injection이란?AND 연산자를 이용하여 작성된 서브 쿼리가 True이면 결과가 보이고, False이면 결과가 보이지 않아 이를 바탕으로 데이터를 탈취할 수 있는 SQL Injection이다. 실습Oracle 데이터베이스의 DB 사용자명을 알아내는 것이 이번 실습의 목표이다. [ Oracle SQL Injection에 사용되는 대표적인 SQL 명령어가 정리되어 있는 사이트 ]https://pentestmonkey.net/cheat-sheet/sql-injection/oracle-sql-injection-cheat-sheet Oracle SQL Injection Cheat Sheet | pentestmonkeyOracle SQL Injection Cheat Sheet Some use..
2024.08.25
-
Error-based SQL Injection
Error-based SQL Injection이란SQL문을 작성 및 실행하여 발생한 에러 메시지에 원하는 데이터를 함께 출력하게 하여 데이터를 탈취하는 기법으로, 한번에 하나의 데이터만 출력할 수 있어 UNION SQL Injection보다는 번거로운 부분이 있지만 마찬가지로 데이터베이스에 직접 접근하여 중요 데이터를 탈취할 수 있다는 점에서 위험한 취약점 공격 중 하나이다.Error-based SQL Injection은 서브쿼리에서 실행한 데이터를 1개씩 밖에 확인 할 수 없기 때문에 원하는 데이터를 찾아내기 위해서는 데이터가 몇 개인지, 원하는 데이터는 어떻게 정렬해서 뽑을지 알아야 한다. 예시Step1. 데이터 개수 출력하기해당 웹사이트는 모의해킹을 위해 만들어진 가상의 웹사이트이며, 따라서 출력된..
2024.08.19
인기 글
-
Vue.js로 하이브리드 앱 만드는 환경 구축하기
저는 Vue.js로 하이브리드 어플을 제작하기 위해서 안드로이드 용으로 세팅을 진행하였습니다. 그리고 이미 이전에 Node.js, Android Studio, Java 등 Vue.js를 구축할 때 필요한 사전 작업은 다 끝낸 상태에서 환경 구축을 시작하였습니다. 만일 이러한 것들이 아직 세팅되지 않았다면 먼저 세팅하고 Vue.js를 다운받아주세요! cmd 창에서 Vue cli를 설치합니다. npm install -g @vue/cli 그런 뒤에 vue 프로젝트를 생성합니다. vue create [프로젝트 파일 명] 성공적으로 만들어졌다면 프로젝트 파일에 들어가서 run을 하고 cmd창에 나와있는 링크로 들어가보면 이런 화면이 나타납니다. cd [프로젝트 파일 명]npm run serve 위 화면이 나타났..
2024.01.27
-
react-native와 spring 연동하기
react로 프론트엔드를, spring으로 백엔드를 구성해서 웹사이트 프로젝트를 진행할건데, 이를 위한 환경 구축과 백엔드에서 프론트엔드로 데이터를 받아오는 과정을 진행해보겠습니다. 1. spring project 만들기Spring Tool Suite4에서 File->New->Spring Starter Project를 클릭하면 아래와 같은 화면이 나타납니다. 여기에 프로젝트명, 패키지명 등을 작성한 뒤 Next를 클릭하면, 아래 사진의 화면으로 넘어갑니다. 저는 나중에 MySQL이랑도 연동을 해야되서 SQL 관련 패키지도 같이 체크했어요. 그렇지 않을 분들은 Spring Boot DevTools, Spring Web 정도만 체크해도 됩니다. 그런 뒤에 Finish 버튼을 클릭하면 스프링 프로젝트가 생..
2024.02.22
-
XSS
XSS(크로스 사이트 스크립트)이란?XSS(크로스 사이트 스크립팅)은 웹 페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도하는 취약점으로, 모의해킹/소스코드 진단 시 가장 높은 비율로 탐지되는 취약점이다. XSS가 많이 탐지되는 취약점인 이유는 공격하기 쉽고 광범위한 곳에서 발생할 수 있지만, 완벽하게 방어하기는 어렵기 때문이다. 실습 1 - 을 이용한 XSS보통 XSS 공격은 정상적인 URL 주소(/q3/#1) 뒤에 " '> "를 작성하여 img 소스 작성을 완료시켜주고, 그 뒤에 를 작성하여 변경된 html 소스 코드를 적용시키면 아래와 같이 alert창이 실행되는 것을 확인할 수 있다. 실습 4 - 파라미터 변조를 이용한 XSS (JS 코드 조작) 위의 페이지는 /q4에서 입력창에 ..
2024.08.25
-
크리덴셜 스터핑 공격
해당 포스트는 SK 쉴더스의 [ EQST Insight 5월호 ]를 보고 작성하였습니다.https://www.skshieldus.com/kor/media/newsletter/insight.do 인사이트 리포트 | SK쉴더스고객님들이 캡스에 자주 묻는 질문들, 빠르게 해답을 찾아보세요.www.skshieldus.com 최근 국내 기업 / 기관들을 대상으로 한 크리덴셜 스터핑(Credential Stuffing) 공격으로 인해 사이버 위협이 크게 증가하였다. 크리덴셜 스터핑(Credential Stuffing)이란?공격자가 노출 또는 유출된 사용자의 아이디, 비밀번호 등 계정정보를 데이터베이스로 구축한 후, 여러 웹/앱 서비스에 무작위로 대입하여 로그인을 시도해 개인정보나 자료를 유출하는 공격 방식이다. ..
2024.06.30
-
Error-based SQL Injection
Error-based SQL Injection이란SQL문을 작성 및 실행하여 발생한 에러 메시지에 원하는 데이터를 함께 출력하게 하여 데이터를 탈취하는 기법으로, 한번에 하나의 데이터만 출력할 수 있어 UNION SQL Injection보다는 번거로운 부분이 있지만 마찬가지로 데이터베이스에 직접 접근하여 중요 데이터를 탈취할 수 있다는 점에서 위험한 취약점 공격 중 하나이다.Error-based SQL Injection은 서브쿼리에서 실행한 데이터를 1개씩 밖에 확인 할 수 없기 때문에 원하는 데이터를 찾아내기 위해서는 데이터가 몇 개인지, 원하는 데이터는 어떻게 정렬해서 뽑을지 알아야 한다. 예시Step1. 데이터 개수 출력하기해당 웹사이트는 모의해킹을 위해 만들어진 가상의 웹사이트이며, 따라서 출력된..
2024.08.19