목록전체 글 (75)
베지밀
분석 툴 : x32dbg 입력값을 더하는 시스템그러나 파일 이름에 맞게 random_number를 찾아야 한다. ebp-8, ebp-C : 우리가 입력한 값입력값이 401000의 인자로 들어간다. call을 해서 401000함수로 진입이때, 우리가 입력한 값이 ebp+8, ebp+C로 바뀌어있음⇒ 이전 함수의 ebp 값을 스택에 저장해서 401000의 새로운 스택 프레임을 만들었기 때문에!! add로 두 값을 더해서 return한다다음 함수로 진입하면 다음과 같은 화면을 볼 수 있는데,GetTickCount : cpu의 clock 타임을 가져온다 → 랜덤한 값을 가져올 때 많이 씀eax에 01BE9EA7가 있고, idiv ecx를 하면idiv를 통해 eax에 몫이, ecx에 나머지가 들어간다.하위 연산..
이메일 헤더란?메일 발송자의 위치부터 시작하여 각 서버를 거쳐 최종적으로 수신자에게 오는 과정을 기록악성코드 분석가는 해커가 발송한 메일을 역추적하기 위해 이메일 헤더의 여러 필드들을 반드시 확인해야 함 이메일 헤더 필드To : 수신인, 받는 사람Cc(Carbon Copy) : 다른 사람이 메시지를 참조해서 읽으라고 보내는 경우Bcc(Blind Carbon Copy) : 숨은 참조로 여러 사람에게 보낼 때 참조인 주소를 숨기기 위해 사용From : 보내는 사람. 임의의 주소를 적으면 되기 때문에 해커는 자신의 주소가 아닌 가짜 주소 입력Reply-To : 수신한 메일을 회신할 때, 우선적으로 Reply-To에 설정된 주소로 회신Received : 수신한 메일이 어느 서버들을 거쳐왔는지 표시헤어 부분의 하..
위 문제에 대해 ERD 모델링을 수행해보자.간단간단 ^^ 우선 주어진 문제에서 다음과 같이 세부 항목을 나눈다.필요한 테이블과 속성들을 구분한다. 위 그림 참고해서 ERD를 그려보자 ERD 그리는 사이트 : https://www.erdcloud.com/ ERDCloudDraw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool.www.erdcloud.com식별 비식별 관계를 고려해서 작성해야 함 끝
MySQL Workbench의 Table Data Import Wizard 기능을 이용해서 엑셀파일을 Import해보자 1. import하고자 하는 시트를 csv로 변환이런식으로 구성된 엑셀파일을 쉼표로 구분하기 위해 csv 파일로 저장하자 다른이름으로 저장 > csv로 파일 형식 변환 2. csv 파일을 json 파일로 변환utf-8 인코딩에서 문제가 발생할 것을 대비해서 json파일로 변환한다.https://csvjson.com/csv2json CSV to JSON - CSVJSONEmbed all the functionality of csvjson in any web application with Flatfile. Auto-match columns, validate data fields, and p..
join 한눈에 정리한 사진 # 없어진 기록 찾기SELECT B.ANIMAL_ID, B.NAMEFROM ANIMAL_INS AS A RIGHT JOIN ANIMAL_OUTS AS BON A.ANIMAL_ID = B.ANIMAL_IDWHERE A.ANIMAL_ID IS NULL; 1. RIGHT JOINSELECT FROM TABLE A RIGHT JOIN TABLE BON A.KEY = B.KEYWHERE A.ANIMAL_ID IS NULL; # 있었는데요 없었습니다SELECT A.ANIMAL_ID, A.NAMEFROM ANIMAL_INS AS A INNER JOIN ANIMAL_OUTS AS BON A.ANIMAL_ID = B.ANIMAL_IDWHERE A.DATETIME > B.DATETIMEOR..
실습 준비1. https://day-night.tistory.com/119 에서 1번 컨테이너 생성서버 / 클라이언트 컨테이너를 생성하고 VSCode로 각각 열기 2. 서버와 클라이언트 둘 다 python3 설치apt updateapt install python3 socket은 파이썬 기본 모듈이기 때문에 python3을 설치하고 import하면 됨. 접속 정보server ip : 172.17.0.2server port : 8001client ip : 172.17.0.3client port : 8002 Python Socket으로 전송하고 nc로 받기1. nc를 사용해서 서버 대기server# nc -l -p [서버 포트] 2. client에서 send.py로 소켓 생성import socketprin..
Docker로 컨테이너 두 개 만들어서 네트워크 실습 진행 우선 작업의 편리함을 위해 VSCode에 Docker를 Attach했다.VSCode와 Docker 연동은 요기 참고 >> https://89douner.tistory.com/123 1. 컨테이너 생성하기cmd 혹은 VSCode의 파워쉘 터미널에 아래 명령어를 입력해서 컨테이너 두 개 생성docker run -dit -p 8001:8001 --name server ubuntu:22.04 docker run -dit -p 8002:8002 --name client ubuntu:22.04docker run -dit -p 8001:8001 --name server ubuntu:22.04docker run -dit -p 8002:8002 --name c..
스택을 이용한 문제 '('면 push하고 ')'하면 pop하는 원리를 이용했다. 첫 시도에는 Stack이라는 클래스를 생성해서 만드려고 했는데,클래스 정의하는 걸 안해봐서 자꾸 다른 답이 나왔다 😂 결국 리스트로 스택 구현해서 class 없이 풀었다. 1. '('면 리스트에 append2. ')'면 리스트에서 마지막 값 pop3. pop할 땐 스택의 길이 검사 (len==0?)4. for문으로 문자열 다 돌고 나서 남은 스택 길이 검사 (len!=0) 풀이 코드def solution(s): stack = [] for i in s: if i == "(": stack.append(i) else: if len(stac..
# 흉부외과 또는 일반외과 의사 목록 출력하기SELECT DR_NAME, DR_ID, MCDP_CD, DATE_FORMAT(HIRE_YMD,"%Y-%m-%d") AS HIRE_YMDFROM DOCTORWHERE MCDP_CD = 'CS' OR MCDP_CD = 'GS'ORDER BY HIRE_YMD DESC, DR_NAME;1. DATE_FORMATDATE_FORMAT(date, format)date : 포맷할 날짜값format : 날짜를 어떻게 포맷할지 # 과일로 만든 아이스크림 고르기SELECT FLAVORFROM FIRST_HALFWHERE TOTAL_ORDER >= 3000 AND FLAVOR IN (SELECT FLAVOR FROM ICECREAM_INFO WHERE INGREDIENT_..
su를 입력하는데 Authentication failure가 떴다.-> root 패스워드가 설정되지 않았기 때문 root 패스워드를 설정하거나, 분실했을 때 초기화하는 방법에 대해서 알아보자 1. GNU GRUB 모드 진입 후 e 누르기부팅 시 shift 키를 연타해서 부트로더에 진입한다e를 눌러서 명령어 편집모드로 들어간다 2. linux 라인의 ro를 찾는다linux로 시작하는 라인의 맨 끝 줄에서 ro를 찾는다. 3. ro를 rw로 수정하고, 한칸 띄워서 init=/bin/bash 입력 4. Ctrl+x로 부팅 진행 5. passwd로 새로운 패스워드를 만들어준다. 6. reboot -f 옵션으로 재부팅 진행 끝 다시 su 명령어를 사용해보니 정상적으로 진입되었다