분류 전체보기 162

코드 작성

코드 작성 space 누르고 입력 값 적기   push 0x10eax 는 0  inc 1을 더한다     dec 1을 뺀다   > 연산 명령어  je(jump equal) 같으면 jump 아니면 아님  > if문에 적용   jump는 무조건 점프 (실선) / je는  점선임  zf 1이면  뜀 0이면 이어짐  jne(jump not equal)  eax 가 0 이 아닐 때는  401020 으로 뛰어라   루프를 돌다가 eax가 0이 되면 루프를 빠져나감        주소를 바꿀 수 있음

취약점 진단 - 문자열 변경

Hello world 의 메세지 변경하기   dbg 다운로드 https://sourceforge.net/projects/x64dbg/files/snapshots/ x64dbg - Browse /snapshots at SourceForge.netA platform built for a new way of working The Work OS that lets you shape workflows, your waysourceforge.net  1. 실행의 흐름으로 찾는 방법 2. 메모리를 찾는 방법     -hello world 더블 클릭   /  문자열 찾는 방법 ctrl + G 문자열 변경하기  파일 패치 > 다른 이름으로 저장 하기문자열 변경 완료

어셈블리어 함수

OpenProcess : 실행중인 프로세스를 여는 함수 TerminateProcess : 내가 가져온 프로세스를 반환함CreateToolHelp32Snapahot : 지정된 프로세스의 스냅샷 이러한 프로세스에서 사용되는 힙, 모듈 및 스레드를 사용Process32First : 시스템 스냅샷 발생한 첫 번째 프로세스에 대한 정보를 검색 api 찾아보기  https://learn.microsoft.com/ko-kr/windows/win32/api/atlthunk/nf-atlthunk-atlthunk_allocatedata AtlThunk_AllocateData 함수(atlthunk.h) - Win32 appsATL 썽크에 대한 메모리 공간을 할당합니다.learn.microsoft.com

악성코드2

f2 bp  브레이크 포인트 설정f7 코드 한 줄 실행(call의 경우에는 함수 진입)f8  코드 한 줄 실행(call그냥 지나침)f9  프로그램 실행ctrl + g 주소 이동 -, + 이전, 다음 주소로 이동enter 분기문에서 target 주소로 이동space 어셈블리 코드 수정     문자열 참조 - 이 위치가 참조하는 문자열 위치를 찾아냄 0040100B: 55 - push ebp > EBP 레지스터의 값을 스택에 push (함수의 시작에서 호출자의 bp 보존하는데 사용)0040100C: 8BEC - mov ebp, esp > ESP 값을 EBP 레지스터로 이동( 새로운 스택 프레임의 베이스 포인터를 설정)0040100E: 53 - push ebx > ebx 레지스터의 값을 스택에 push(함수가..

악성코드 분석 - 명령어

데이터 이동 lea : 데이터를 직접 읽지 않고 주소만 계산해서 레지스터에 저장을 하는 명령어mov : 메모리에서 직접 데이터를 읽어오는 명령어    산술연산inc : 레지스터나 메모리 값에 1을 더한다dec : 레지스터나 메모리 값에서 1을 뺸다  add : 두 값(레지스터, 소스) 을 더한다sub : 두 값을 뺀다 > 목적지 - 소스 논리 연산and : 두 값의 비트 단위로 and 연산을 수행함, 둘 다 1인 경우에만 1을 반환한다.or : 두 값의 비트 단위로 or 연산을 수행함, 둘 중 하나라도 1이면 1을 반환한다.xor : 두 값의 비트 단위로 xor 연산을 수행함, 두 값이 다르면 0을 반환한다not : 비트를 반전시킴,  즉 1은 0 으로 , 0은 1로 반전시킨다. 분기jmp : 무조건 특..

SQL - 서브쿼리

SELECT 절에 서브쿼리 작성 특정 조건에 맞는 데이터 조회 조인 결과 -각 회원의 나이, 전체 회원의 평균 나이, 회원과 평균 나이의 차이 구하는 쿼리나이 별 멤버 수를 COUNT 함수 사용해서 조회하기 TMD 테이블에서 25살이 넘은 멤버만 조회해서 TMEMBER 와 조회하는 쿼리 WHERE 절에 서브쿼리 작성-TMD 회원 중에서 27살이 넘은 멤버만 조회 하고 그 멤버를 TMEMBER의  테이블에서 데이터 조회 특정 필드의 최댓값을 가진 데이터 조회 HAVING 절에 서브쿼리 사용 평균 나이보다 높은 나이를 가진 그룹 조회

Data Base/sql 2024.08.27