본문 바로가기

728x90
반응형

전체 글

(138)
파이썬 포트 스캐닝 pip install python-nmap ㄱㄱ import nmap nm = nmap.PortScanner() for host in nm.all_hosts(): print('----------------------------------------------------') print('Host : %s (%s)' % (host, nm[host].hostname())) print('State : %s' % nm[host].state()) for proto in nm[host].all_protocols(): print('----------') print('Protocol : %s' % proto) lport = nm[host][proto].keys() lport.sort() for port in lport:..
제2302회 리눅스마스터 1급 1차(B형) 가채점/가답안 어제 리눅스 마스터 1급 1차 시험을 보고왔다. 1과목 문제부터 멘붕이 와서 시험내내 이 시험 조졌다 생각했었는데 가채점을 해보니 다행히 과락을 면하고 63~64점으로 아슬아슬 턱걸이 합격할 것 같다. 가채점은 GPT3를 활용해서 문제 전체를 두 세번 꼼꼼히 확인하였다. 하지만 완벽해보이지는 않아서 그냥 참고용으로 보면 좋겠다. B형의 가채점 답안은 아래와 같다. 4 1 3 2 (근데 GPT도 2번, 3번 헷갈려 하는 거 같다) 2 1 1 3 4 2 2 2 (이것도 GPT가 헷갈려 함) 2 4 3 1 2 2 2 4 2 1 3 1 3 1 2 1 1 3 3 3 1 2 2 3 3 2 2 1 4 4 4 2 3 3 4 1 3 2 4 1 1 3 1 2 3 2 2 1 1 2 1 2 3 2 3 3 3 2 2 4 2 2..
리눅스 마스터 1급 필기(1차)&실기(2차) 대비 요약 - 완전판 서론 2023년의 절반이상이 지났다. 그동안 너무 나태하게 살아왔고 이루고자 한 목표를 달성하려고 노력조차 하지 않는 나를 채찍질 하는 겸 2023년 9월 9일 리눅스 마스터 1급 필기 시험에 응시하였다. 그에 대비하여 복습 및 요약 정리를 할 겸 이 글을 작성한다. ※2023년 8월 기준 계속해서 업데이트 예정 출제기준 1. 리눅스 실무의 이해 리눅스의 개요 운영체제의 개요, 리눅스 기초 리눅스 시스템의 이해 리눅스와 하드웨어, 리눅스의 구조, X 윈도우, SHELL, 프로세스 네트워크의 이해 네트워크 기초 및 설정 2. 리눅스 시스템 관리 일반 운영관리 사용자·파일 시스템·프로세스·S/W 설치 및 관리 장치 관리 장치의 설치 및 관리, 주변장치 관리 시스템 보안 및 관리 시스템 분석, 시스템 보안 및..
[LOS] 18. nightmare 주석의 기능을 담당하는 문자(#, --)를 필터링하여 주석이 동작하지 않아 보이지만, ;%00 을 통해 주석이 가능하다. 제한 입력 글자는 6으로 7이상 길이의 문자를 입력받으면 No Hack ~_~이 뜨면서 풀리지 않는다. 문제를 풀면서 백준의 숏코딩, 골프코딩(?)이 떠올라서 나름 재밌게 풀었다. 주석 부분은 ;%00을 넣어주면 되지만 나머지 4글자로 풀 수 있는 방법은 mysql의 자동 형 변환 기능을 생각해보면서 풀어야 한다. 설명이 복잡해 질 것 같아 최대한 단순하게 말하면 문자열과 정수를 등호(=)로 비교할 시 mysql에서는 문자열을 정수 0으로 변형해 자동으로 타입이 같게 비교한다. char=int -> int(0)=int 이런식으로 그럼 다시 문제로 돌아와서 4글자로 가능한 방법은 ')으..
[LOS] 17. zombie_assassin 솔직히 보자마자 막막했던 문제였다. 하지만 차근차근 생각해보고 처음 본 strrev함수에 대해 알아보고 시도해보니 풀렸다. strrev 함수로 인하여 파라미터에 입력값을 주면 거꾸로 뒤집어져서 최종적으로 입력된다. ex) admin -> nimda 이를 활용해 id 파라미터에 "를 입력하여 '"\'의 형태로 만들어 맨뒤에 있는 싱글쿼터를 문자열 그대로로 받게 만든다. 위에서 설명을 빼먹었는데 갑자기 나온 역슬래시는 addslashes로 인하여 입력값 뒤에 \ 문자열이 추가되게 만드는 함수다. id='"\'의 형태로 인하여 pw 파라미터의 맨 앞 싱글쿼터는 자연스래 id의 맨 앞 싱글쿼터와 이어지며 구문이 형성된다. 마지막으로 or 1=1%23의 형태로 맨 뒤 싱글쿼터를 막아주고 참 값을 작성하여 id를 ..
[LOS] 16. succubus 전 문제에서 싱글쿼터 우회 기법들 검색을 하도 해서 그런지 이 문제를 보자마자 이건 id에 \ 값을 넣어 싱글쿼터를 문자열 그대로 처리되게 만든 후 우회하면 되겠다는 생각이 들었고 생각은 적중했다. 정답: https://los.rubiya.kr/chall/succubus_37568a99f12e6bd2f097e8038f74d768.php?id= \&pw=%20or%202=2%23 https://los.rubiya.kr/chall/succubus_37568a99f12e6bd2f097e8038f74d768.php?id= los.rubiya.kr
[LOS] 15. assassin 싱글쿼터가 필터링 되어 있다. 처음엔 이를 우회하는 방법은 중점으로 풀어보려했는데 도저히 방법이 안나와서 포기했고 굳이 '='을 사용하지 않고 like를 사용한데에 집중했다. 그래서 찾은 게 brute forcing으로 guest의 비밀번호를 찾았고 이를 이용해 admin 비밀번호를 찾았다. import requests url ='https://los.rubiya.kr/chall/assassin_14a1fd552c61c60f034879e5d4171373.php?pw=' #url 주소 입력 def find_pw(): pw_len=10 string='' for pw_value in range(1,pw_len+1): for ascii in range(48,122): value ="90{}%".format(st..
[LOS] 14. giant from이랑 prob_gian가 붙어 있어서 쿼리문이 실행이 안됨 또 공백 필터링이 걸려있음 그걸 우회해야함 %0c(form feed)로 가능 정답 : https://los.rubiya.kr/chall/giant_18a08c3be1d1753de0cb157703f75a5e.php?shit=%0c https://los.rubiya.kr/chall/giant_18a08c3be1d1753de0cb157703f75a5e.php?shit=%0C los.rubiya.kr

728x90
반응형