본문 바로가기

전체 글156

JWT(JSON Web Token) 취약점 보호되어 있는 글 입니다. 2021. 12. 20.
Android10(s9)에서 frida 동작 안할 때 해결 방법 console.log도 찍히지 않아서 아래 명령어로 Zygote Preforking을 비활성화하여 해결함 su setprop persist.device_config.runtime_native.usap_pool_enabled false getprop | grep usap python 3.7.2 frida 4.2.12 frida-tools 9.2.5 2021. 11. 11.
pip UnicodeDecodeError 해결법 pip로 패키지 설치시 아래와 같이 UnicodeDecodeError가 발생하며 설치가 정상적으로 되지 않습니다. UnicodeDecodeError: 'ascii' codec can't decode byte 0xc0 in position 7: ordinal not in range(128) 이럴때는 .py 파일을 수정해주면 됩니다. 1. \lib\site.py의 setencoding()함수 encoding = "ascii"를 아래와 같이 encoding = "utf-8"로 변경 def setencoding(): """Set the string encoding used by the Unicode implementation. The default is 'ascii', but if you're willing t.. 2020. 10. 22.
Scapy를 이용한 tcp 통신(+패킷 재전송 및 변조) scapyscapy에 대한 자세한 설명은 아래 사이트에 나와있다.https://scapy.readthedocs.io/en/latest/Welcome to Scapy’s documentation! — Scapy 0 documentation© Copyright 2008-2020 Philippe Biondi and the Scapy community Revision 0f34ce77.scapy.readthedocs.io 3-way handshake123456789 #3 way handshake ip=IP(src="192.168.30.2", dst="192.168.30.3") syn_packet = TCP(sport=50000, dport=60000, flags="S", seq=100) synack_packet .. 2020. 6. 28.
산업제어시스템 보안 가이드 산업제어시스템(ICS) 보안 가이드(NIST SP 800-82 [Guide to Industrial Control Systems(ICS) Security]) https://www.krcert.or.kr/data/guideView.do?bulletin_writing_sequence=35433&queryString=YnVsbGV0aW5fd3JpdGluZ19zZXF1ZW5jZT0zNTQzMw== 2020. 5. 23.
Smurf Attack * Smurf Attack-> 원리Attacker가 출발지 IP를 Victim의 IP로 Spoofing하여 ICMP Request패킷을 시스템이 아주 많은 네트워크를 Broadcast하면 해당 패킷을 받은 네트워크가 Victim에게 ICMP Reply패킷을 대량으로 보내는 공격이다. -> 대응책1. 라우터에서 Direct Broadcast를 차단한다. (대부분의 라우터에서 이미 Default로 차단되어 있다.) [실습]실습을 진행하기 전 아래와 같이 토폴로지를 구성한다. - R1 : Attacker - R3 : VictimR1이 10.1.1.0 대역으로 R3의 IP로 Spoofing한 ICMP Request패킷을 Broadcast하여 10.1.1.0 네트워크가 R3로 대량의 ICMP Reply을 받을 수.. 2020. 3. 12.
꾸울^@@^ 팁! 구글링해서 안나오면 여기(http://www.baidu.com/)에 검색 하면 잘나옴 ~!~! 2020. 3. 9.
PentesterLab 2 SQL Injection Example 1 (MAKE IT TRUE) PoC Example 2 (LIMIT-MAKE IT TRUE) PoC limit 함수반환되는 출력수를 제한하는 함수임 반환 행 수 제한 우회사용자 로그인 시, 쿼리에서 반환되는 사용자가 1명이도록 소스코드에서 제한하는 경우가 있음limit 함수를 사용하면 반환되는 행 수를 제한할 수 있으므로 이를 이용하면 됨 Example 3 (ESCAPE-MAKE IT TRUE) Hint싱글 쿼터를 입력해도 에러 메세지가 반환되지 않음 PoC Normal QuerySELECT * FROM users WHERE username='root' AND password='qwer'; Injection QuerySELECT * FROM users WHERE u.. 2020. 3. 8.
PentesterLab 1 SQL Injection Example 1 (STRING TYPE-MAKE IT TRUE)http://192.168.30.129/sqli/example1.php?name=root PoChttp://192.168.30.129/sqli/example1.php?name=root' or '1'='1http://192.168.30.129/sqli/example1.php?name=root' or 1=1-- -http://192.168.30.129/sqli/example1.php?name=root' or 1=1%23 주석 필터링 우회%23 : # MySQL 주석1. #2. -- (뒤에 공백이 있어야 주석으로 동작함)3. /**/ Example 2 (ERROR NO SPACE-MAKE IT TRUE)http://192.. 2020. 3. 6.
ARP Send 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106#include #include #include #include #include #include #include #include #include #include u_char my_mac[6] = {};u_char my_ip[4] = {};u_char target_mac[6] = {0x00, 0x0c, 0x29, 0x8d, 0x3b, 0.. 2020. 3. 5.
Dictionary Attack - SHA-512는 $6을 포함하여 11자리를 사용자가 입력한 패스워드와 해쉬화한다. import sys import os import crypt account={} def arg_check(argv): if (len(argv)) != 2 : print('Usage : crack [Dictionary_file]') sys.exit(1) if os.path.isfile(argv[1]) != 1 : print('No such Dictionary_file') sys.exit(1) def main(): with open('/etc/shadow', 'r') as s_f : while True : s_line = s_f.readline() if not s_line : break values = s_line.spli.. 2020. 3. 4.
DVWA(Damn Vulnerable Web Application) Brute Force Low, MediumSTEP 1) 로그인 페이지의 Username과 Password 입력란에 임의의 문자열을 넣고 Login버튼을 눌렀더니 username, password 파라미터로 값이 전달되는 것을 확인했습니다. STEP 2) Brute Force 공격을 수행 후, 결과로 Length 길이가 다른 Payload1과 Payload2를 확인하였습니다. STEP 3) 획득한 Payload값을 각각 Username, Password에 입력하여 로그인하였습니다. Command Execution LowSTEP 1) ping이 가능한 입력 란에 ping 대상 IP주소와 여러 개의 명령어를 한 줄에 실행시킬 수 있는 문자인 ‘;’와 cat /etc/passwd 명령어를 적고 submit버튼을.. 2020. 3. 3.
파일 내 문자열 검색 도구 특정 폴더 하위 파일 내 문자열을 검색하는 방법에는 아래와 같은 방법이 있다. 1) 명령어 사용 명령어 사용시에는 findstr 명령어를 이용하면 된다. 1 findstr /s /i "문자열" C:\* 파일 크기가 너무 큰 경우에는 검색되지 않는데, 이 경우에는 도구를 설치해 사용하면 된다. /s 옵션은 하위 폴더까지 검색, /i는 대소문자를 구별하지 않는 옵션이다. 2) 도구 사용 Windows Grep툴을 다운받아 설치하면 아래와 같은 화면을 볼 수 있다. Options-Expert Mode를 선택한다. Search-Search에서 검색 대상 폴더, 문자열, 확장자를 입력한 후 시작한다. ㅅㅎ감사^^*********** 2020. 2. 25.
ARP를 이용한 host scan from scapy.all import * import threading import os host_list = {} num = 0 threadLock = threading.Lock() threads = [] def printHosts(host_list): print('-------------------------- HOST LIST --------------------------') print('NUM IP MAC') print('---------------------------------------------------------------') for num in host_list: ip, mac = host_list[num] print("%d %s %s" % (num, ip, mac)) print(.. 2020. 2. 24.
ARP Spoofing from scapy.all import * import threading import os host_list = {} num = 0 threadLock = threading.Lock() threads = [] def printHosts(host_list): print('-------------------------- HOST LIST --------------------------') print('NUM IP MAC') print('---------------------------------------------------------------') for num in host_list: ip, mac = host_list[num] print("%d %s %s" % (num, ip, mac)) print(.. 2020. 2. 24.