분류 전체보기 (246) 썸네일형 리스트형 Veil을 이용한 reverse_tcp 악성코드 (사회공학적 기법) Veil을 이용한 reverse_tcp 악성코드 제작 및 배포(사회공학적 기법) 이번 글에서는 Veil을 이용해 악성코드를 이용한 공격을 실습해보고자 한다. 매번 말하는 것이지만 실제 서버나 개인에게 공격을 하는 경우 법적 처벌을 받게 될 것이다. 실습환경을 구성해서 안전하게 실습하길 바란다. [악성코드 공격 시나리오] 1) 공격자는 악성코드를 제작한 후 실제 프로그램과 같이 만들어서 희생자가 악성코드에 감염되도록 유도한다. 2) 감염이 된 이후 희생자의 개인 정보 및 중요 정보를 탈취한다. [환경구성] OS IP 공격자(Attacker) Kali Linux 2019 192.168.0.130 희생자(Victim) Windows7 192.168.0.128 [공격 진행] 먼저 Veil.py를 실행시키고 Ve.. ARP Spoofing을 이용한 모의해킹 네트워크 공격 시나리오 ARP Spoofing을 이용한 모의해킹 네트워크 공격 시나리오 ARP Spoofing ARP(Address Resolution Protocol)란? 1) ARP는 IP주소를 MAC 주소로 대응(Bind) 하기 위해 사용되는 프로토콜이다. 2) 각 IP 주소와 MAC 주소를 ARP 캐시라 불리는 메모리에 테이블 형태로 저장하고, 패킷 전송 시 사용한다. 3) ARP 테이블은 정보 저장 시간 평소에 2분이고, 2분 이내에 다시 통신을 한다면 10분으로 연장된다. ARP Spoofing 이란? LAN에서 ARP를 이용하여 상대방의 데이터 패킷을 중간에서 가로채는 중간자 공격(MITM) 기법이다. 더 자세한 내용은 아래 페이지를 참고하길 바란다. https://www.crowdstrike.com/cyberse.. webhacking.kr old 17번 문제풀이 webhacking.kr old 17번 문제풀이 문제를 들어가면 위와 같이 출력된다. 힌트를 얻기 위해 코드를 확인해보자. 코드를 보니 unlock 변수에 아주 긴 식을 계산해서 넣고, input과 unlock이 같으면 문제가 해결되는 것으로 보인다. 마치 컴퓨터가 예전에 계산기였음을 알려주는 문제인가 싶다. 나온 값을 입력하면 문제가 해결된다. 2분짜리 문제다. 쉽게 해결할 수 있다. webhacking.kr old 16번 문제풀이 webhacking.kr old 16번 문제풀이 문제를 들어가면 위와 같이 출력된다. 처음엔 그림인 줄 알았는데 문자였다. 코드를 확인해보자. 코드를 보니 cd값에 따라 여러 가지 if문이 존재한다. 그리고 cd가 124일 때 다른 페이지로 넘어간다. 그래서 저 cd를 입력하기 위해 URL에 https://webhacking.kr/challenge/js-3/?124 로 입력했는데 변화가 없었다. 그래서 혹시나 아스키코드인가 싶었다. 아스키코드로 보면 순서대로 'daws|'이다. 그래서 하나씩 눌러봤더니 별이 움직인다. 마지막으로 '|'을 눌러봤는데 별만 추가되고 따로 변하는 게 없었다. 그래서 shift를 누르고 '|'를 누르니 바로 alert창으로 성공 메시지가 나왔다. 이번 문제는 cd값을 보고 AS.. webhacking.kr old 14번 문제 풀이 webhacking.kr old 14번 문제개요 문제를 들어가면 위와 같이 출력된다. 스크립트를 보니 ul의 문서의 URL을 저장하고 URL에서 .kr의 위치를 숫자로 반환하는 indexof함수를 사용한다. 이후 '.kr'의 위치에 30을 곱한다. 30을 곱했을 때의 값을 맞추면 문제가 해결될 것으로 보인다. webhacking.kr old 14번 문제 풀이 script 코드를 조금 수정해서 계산했다. ul에 URL을 복사해서 넣고 30을 곱한 값을 alert() 함수로 출력했다. 해결되었다. 이번 문제도 지금까지 풀던 문제의 비해 쉬운 편이어서 어려움 없이 해결했다. webhacking.kr old 13번 문제풀이(Writeup) Blind SQL Injection 고난이도 문제 webhacking.kr old 13번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 간단하게 코드를 확인해봤다. 위에 "제출"칸이 no이고 get메소드로 전달되고, 아래 Auth칸이 password이고 get메소드로 전달된다. 먼저 간단하게 1을 넣어봤다. result가 1이 나온다. 그리고 2를 넣었을 때는 result가 0이 나온다. 실험을 해보니 #, =, +, -, *, and, &, 공백 등이 필터링되고 있다. 지금까지 풀었던 Blind SQL Injection 문제 중에 좀 어려운 것 같다. query 문은 대충 예상했을 때 select result from table_1 where no= 이렇게 되면, 데이터베이스 이름이나 컬럼 값까지 다 찾아야 문제를 풀 수 있을 것 같다.. webhacking.kr old 15번 문제 해결 webhacking.kr old 15번 문제개요 문제의 들어가면 위와 같이 출력된다. 당황스럽다. 아무것도 나오지 않고 Access_Denied가 나온 후 webhacking.kr home 페이지로 넘어가기 때문에 어떤 걸 시도해야 할 지 헷갈린다. 그래서 패킷을 캡처해서 확인해보기로 했다. Burp Suite를 켜서 Intercept 했다. 크게 의심되는 부분이 없어서 Forward 했다. 18번 줄에서 우리가 계속 본 alert창이 출력되고 19번 줄에서 홈으로 이동한다. 20번 줄에서 getFlag가 보인다. 19번 줄을 스킵해야 flag를 볼 수 있다는 것을 알았다. webhacking.kr old 15번 문제 해결 그래서 19번줄을 지우고 Forward했다. 역시 Flag가 나온다. 클릭하면 문.. webhacking.kr old 06번 문제풀이 webhacking.kr old 06번 문제 개요 문제에 들어가면 위와 같이 출력된다. view-source를 통해 코드를 확인하자. 코드를 보면 val_id를 base64로 20번 encode를 하고 몇 가지 문자를 바꾼 후 user와 password 쿠키에 저장한다. 문제 해결을 위해서 가장 핵심적인 부분은 if문이다. 이번 문제는 id는 admin을 password는 nimda를 인코딩해서 decode 되었을 때 값이 같아야 문제가 해결된다. 이제 스크립트를 작성해보자. webhacking.kr old 06번 문제풀이 import base64 def replaceIt(data): data = data.replace("1","!") data = data.replace("2","@") data = da.. 이전 1 ··· 23 24 25 26 27 28 29 ··· 31 다음