Wargame | CTF/WebHacking

    웹고트 AJAX Security - JSON Injection

    * 보스톤, MA - 공항 코드 BOS에서 시애틀, WA - 공항 코드 SEA로 여행 중입니다.* 공항의 3 자리 코드를 입력하면 티켓 가격을 묻는 AJAX 요청이 실행됩니다.* 사용가능 두 항공편이 있으며, 정차역이없는 비싼 항공편과 2 정거장의 저렴한 요금이 있음을 알수있습니다.* 귀하의 목표는 멈추지 않고 값이 싼 가격에 하나를 얻으려고하는 것입니다. GET 요청으로 여러 파라메터를 전달해 주는모습입니다. Request Interrupt에서 마우스 오른쪽을 클릭하고 Do intercept - Response to this request 를 눌러 이 요청에 대한 응답에 인터럽트를 걸어줍니다. 응답에 인터럽트가 걸려서 조작이 가능합니다. 가격을 마음대로 조정해주고 forward 해줍니다.

    웹고트 Injection flow - Command Injection

    명령 주입 공격은 매개 변수 기반 사이트에 심각한 위협이됩니다. 공격의 배후에있는 방법은 배우기 쉽고 피해는 전체 시스템 손상에 이르기까지 다양합니다. 이러한 위험에도 불구하고 인터넷 상에있는 수많은 시스템이 이러한 형태의 공격에 취약합니다. 위협을 쉽게 유발할뿐만 아니라, 약간의 상식과 사전 고려 사항으로 거의 완전히 막을 수있는 위협이기도합니다. 이 수업은 학생들에게 매개 변수 주입에 대한 몇 가지 예를 보여줍니다. 모든 입력 데이터, 특히 OS 명령, 스크립트 및 데이터베이스 쿼리에 사용되는 데이터는 항상 위생적으로 관리하는 것이 좋습니다. 운영 체제에 명령을 주입하십시오. 명령어가 더블쿼터로 묶여있으므로 유의하고 인젝션코드를 짜줍니다. 주입할 코드는 ";ifconfig;echo " 입니다. 맨뒤의..

    웹고트 Injection flow - Log Spoofing

    * 아래의 회색 영역은 웹 서버의 로그 파일에 기록 될 내용을 나타냅니다. * 귀하의 목표는 사용자 이름 "admin"이 로그인에 성공했는지 확인하는 것입니다. * 로그 파일에 스크립트를 추가하여 공격을 강화하십시오. burfsuite로 프록시를 잡아주고 그냥 로그인이 성공하였다는 메세지를 작성하여 넣어줍니다. admin 계정에대한 로그인이 성공했다는 메세지를 넣어서 Log Spoofing 공격을 해줍니다. 로그를 보는 관리자가 속을수 있습니다.

    웹고트 Injection flow - Blind String SQL Injection

    아래 양식을 통해 사용자는 계좌 번호를 입력하고 계좌 번호가 유효한지 여부를 결정할 수 있습니다. 이 양식을 사용하여 참 / ​​거짓 테스트를 개발하여 데이터베이스의 다른 항목을 검사하십시오.참조 값 : 'A'= 65 'Z'= 90 'a'= 97 'z'= 122목표는 cc_number가 4321432143214321 인 행에 대한 테이블 핀의 필드 이름 값을 찾는 것입니다.이 필드는 varchar 유형의 문자열입니다. 발견 된 이름을 공과에 합격하도록 양식에 기입하십시오. 검색된 이름 만 양식 필드에 입력해야 철자 및 대소 문자에주의를 기울여야합니다.SUBSTIRING 함수는 문자열을 자르는 함수로, 함수 원형은 다음과 같습니다. SUBSTRING(컬럼 또는 문자열, 시작위치, 길이) 101 and (S..

    웹고트 Injection flow - String SQL Injection

    SQL 주입 공격은 데이터베이스 중심 사이트에 심각한 위협이됩니다. 공격의 배후에있는 방법은 배우기 쉽고 피해는 전체 시스템 손상에 이르기까지 다양합니다. 이러한 위험에도 불구하고 인터넷 상에있는 엄청난 수의 시스템이 이러한 형태의 공격을 받기 쉽습니다. 위협을 쉽게 유발할뿐만 아니라, 약간의 상식과 사전 고려 사항으로 쉽게 예방할 수있는 위협이기도합니다. SQL 인젝션의 위협이 다른 방법으로 예방되는 경우에도 모든 입력 데이터, 특히 OS 명령, 스크립트 및 데이터베이스 쿼리에 사용되는 데이터는 항상 위생적으로 관리하는 것이 좋습니다.일반 목표 : 아래 양식을 통해 사용자는 신용 카드 번호를 볼 수 있습니다. 모든 신용 카드 번호가 표시되는 SQL 문자열을 주입하십시오. 'Smith'라는 사용자 이름을..

    웹고트 Injection flow - Blind Numeric SQL Injection

    아래 양식을 통해 사용자는 계좌 번호를 입력하고 계좌 번호가 유효한지 여부를 결정할 수 있습니다. 이 양식을 사용하여 참 / ​​거짓 테스트를 개발하여 데이터베이스의 다른 항목을 검사하십시오. 목표는 cc_number가 1111222233334444 인 행에 대한 테이블 핀의 필드 핀 값을 찾는 것입니다.이 필드는 정수 유형 인 int 유형입니다. 발견 된 핀 값을 양식에 넣어 수업을 통과시킵니다.실험을통해 101번이라는 숫자는 valid 하다는 결과를 알아냈습니다. 쿼리상 101을 select구문으로 찾아와서 있으면 True를 반환하는것 같습니다. 101이 참임을 이용하여 and를 사용해 pin값을 찾아봅시다. 101 and ((select pin from pins where cc_number = '1..

    웹고트 Injection flow - Database Backdoors

    1 단계 : 문자열 SQL 주입을 사용하여 둘 이상의 SQL 문을 실행합니다. 이 단원의 첫 번째 단계에서는 취약한 필드를 사용하여 두 개의 SQL 문을 만드는 방법을 알려줍니다. 첫 번째는 시스템이고 두 번째는 완전히 당신 것입니다. 귀하의 계정 ID는 101입니다.이 페이지에서 귀하의 암호, ssn 및 급여를 볼 수 있습니다. 연봉을 더 높은 것으로 상향 갱신하는 또 다른 업데이트를 주입하십시오.세미콜론으로 구분해주고 update employee set salary=100000 where user_id=101 를 입력해주어 다른 쿼리도 같이 실행하게 만듭니다. 변경이 완료되었습니다

    웹고트 Injection flow - XPATH Injection

    아래 양식을 통해 직원들은 급여를 포함한 모든 개인 데이터를 볼 수 있습니다. 귀하의 계정은 Mike / test123입니다. 귀하의 목표는 다른 직원 데이터를 보는 것입니다. 아이디와 패스워드란에 전부 참이되도록 ' or ''=' 를 넣어줍니다. 출력완료

    웹고트 Injection flow - Numeric SQL Injection

    SQL 주입 공격은 데이터베이스 중심 사이트에 심각한 위협이됩니다. 공격의 배후에있는 방법은 배우기 쉽고 피해는 전체 시스템 손상에 이르기까지 다양합니다. 이러한 위험에도 불구하고 인터넷 상에있는 엄청난 수의 시스템이 이러한 형태의 공격을 받기 쉽습니다.위협을 쉽게 유발할뿐만 아니라, 약간의 상식과 사전 고려 사항으로 쉽게 예방할 수있는 위협이기도합니다.SQL 인젝션의 위협이 다른 방법으로 예방되는 경우에도 모든 입력 데이터, 특히 OS 명령, 스크립트 및 데이터베이스 쿼리에 사용되는 데이터는 항상 위생적으로 관리하는 것이 좋습니다.일반 목표 : 아래 양식을 통해 사용자는 날씨 데이터를 볼 수 있습니다. 모든 날씨 데이터가 표시되는 SQL 문자열을 주입하십시오. 그냥 New York 을 조회하면 하나만 ..

    웹고트 Injection flow - Stage 3: Numeric SQL Injection

    3 단계 : SQL 인젝션을 실행하여 권한을 무시합니다. 정규 직원 인 '래리 (Larry)'는 View 스태프 페이지의 View 함수 매개 변수에 SQL 인젝션을 사용하여 보스 ( 'Neville')의 프로필을 봅니다. 리스트를 요청하는 파라메터들을 살펴보면 employee_id가 있고, id가 젤 높은 사람이 보스입니다. 앞의 구문을 참으로 만들고 employee_id를 내림차순으로 정렬하면 젤 높은 숫자(어드민)이 출력됩니다. 성공적으로 Neville의 프로필이 조회되었습니다.

    웹고트 Injection flow - Stage1: String SQL Injection

    1 단계 : String SQL 주입을 사용하여 인증을 무시합니다. 올바른 암호를 사용하지 않고 SQL 인젝션을 사용하여 보스 ( 'Neville')로 로그인하십시오. Neville의 프로필을 볼 수 있고 모든 기능을 사용할 수 있는지 확인하십시오 (검색, 작성 및 삭제 포함). 프록시를 설정하고 burfsuite 에서 인터럽트를 잡아준뒤에, 패스워드를 넘겨주는 부분에 'or ''=' 를 넣어줍니다. 로그인 성공!