본문 바로가기

분류 전체보기

(151)
detours를 이용한 hooking 설치 visual studio 개발자 명령 프롬프트를 열어 실행하거나 해당 링크에서 다운받아준다. git clone https://github.com/Microsoft/Detours.git 해당 경로로 이동한뒤 makefile이 있는곳에서 nmake를 사용한다. 기본적으로 32비트 버전을 지원하는데 64비트를 하고싶으면 SET DETOURS_TARGET_PROCESSOR=X64 nmake 다음과 같이 환경변수를 설정후에 nmake를 사용하면된다. // dllmain.cpp : DLL 애플리케이션의 진입점을 정의합니다. #include "pch.h" #include "C:\Users\USER\Desktop\Detours-master\include\detours.h" #include #include #pra..
x64 Hooking 공부(메모장을 통한) // dllmain.cpp : DLL 애플리케이션의 진입점을 정의합니다. #include "pch.h" #include #include #pragma pack(push,1)//구조체 데이터 정렬크기를 1바이트로 정렬, 구조체 변수간에 공간이 있을수있기에 1바이트로 할당하는것같다. struct GOGO_NAM { BYTE opcode1; DWORD lpTarget1; DWORD opcode2; DWORD lpTarget2; BYTE opcode3; }; #pragma pack(pop)//위의 설정 이전상태로 돌림 DWORD WINAPI Hook64(); DWORD WINAPI Unhook64(); GOGO_NAM orgFP; BOOL Hooked = FALSE; INT WINAPI NewWriteFile(..
Remote Template Injection 친구 블로그를 보다가 재밌고 간단해보여서 바로 해봤다. 중국 문서형 악성코드에서 자주쓰이는 공격기법이라한다. 워드안에 있는 템플릿을 이용한 기법으로 악성코드를 안전하게 퍼트릴수있다고 한다. 템플릿을 구성하는 부분 중 템플릿설정 매크로 등이 담겨있는 .dotm파일을 이용한다. 우선 사진의 템플릿중 원하는걸 골라 만들어준다. 만든 후 새로 빈 워드를 또 만들어 준 후 매크로 기능을 열어서 macros in 을 사진처럼 골라주고 create를 해준다. Sub AutoOpen() a End Sub Sub Document_Open() a End Sub Sub a() Dim wsh As Object Set wsh = CreateObject("WScript.Shell") wsh.Run ("calc.exe") For ..
Pandas를 이용한 데이터 정리 import pandas as pd import numpy as np import openpyxl import matplotlib as mpl import matplotlib.pyplot as plt in_path = r'C:\Users\USER\Desktop\nam\work\excel_hi\park1\test.xlsx' out_path=r'C:\Users\USER\Desktop\nam\work\excel_hi\park1\test_out.xlsx' df=pd.read_excel(in_path,usecols=[1,2,5,6]) df['접수일자'] = pd.DatetimeIndex(df['접수일자']).month df['접수시간'] = pd.DatetimeIndex(df['접수시간']).hour df=df...
ELK 공부 4 리눅스에서 사용되는 로그 /var/log/apache2/access_log Apache 서비스 데몬의 로그 파일, 웹 서비스를 운영 할 경우 해당 내용이 기록되게 된다. /var/log/apache2/error_log Apache 서비스 데몬의 에러 사항이 기록 된다. syslog.conf 에서 로그를 남기지 않는 것으로 지정된 내용을 제외한 모든 항목이 기록된다. 리눅스 시스템 로그파일 /var/log/syslog 기본적으로 시스템에서 발생하는 로그들을 이 파일에 출력한다. /var/log/auth.log 사용자가 로그인시에 발생하는 로그를 이 파일에 저장한다. /var/log/dmesg 부팅 시의 시스템 로그가 기록, dmesg 명령어를 통해 출력되는 내용이 기록된다. /var/log/wtmp 최근의..
ELK 공부3 ES연습 만약 curl 명령어를 실행했을때 security에러가 뜬다면 -u 옵션을 사용해 (-u id:pw)를 추가해서 사용하자 #인덱스 생성 curl -XPUT http://localhost:9200/myindex?pretty # 인덱스 조회 curl -X GET http://localhost:9200/myindex?pretty # 인덱스 삭제 curl -X DELETE http://localhost:9200/myindex?pretty myindex 라는 이름의 index를 컨트롤 해주고 뒤의 pretty을 쓰면 보기좋게 결과가 나온다. # 데이터 삽입 curl -XPOST http://localhost:9200/myindex/data/1/?pretty -H 'Content-Type: applicat..
ELK공부2(Docker-Compose를 이용한 구축) Docker-Compose설치 sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 다른 버전을 설치하고 싶으면 1.27.4부분을 버전에 맞게 수정 https://github.com/docker/compose/releases Releases · docker/compose Define and run multi-container applications with Docker - docker/compose github.com 버전확인은 해당링크 참조 #docker-compose에 권한설정 sudo chmod..
회사의 윈도우용 SSL 인증서를 ubuntu에 설치하기 매번 프로그램 설치나 명령어를 쓰면 항상 --no-check-ssl같은 명령어를 써야 하므로 귀찮았다. 일단 윈도우에 있는 인증서를 복사해야된다. cmd 에 certmgr.msc 명령어 실행 신뢰할 수 있는 루트인증 기관 → 인증서 에서 인증서선택 후 내보내기 내보낼때 x509로 둘중 아무거나 하면된다. 리눅스에 인증서를 옮겨주고 윈도우용 인증서는 .cer확장자 이지만 우분투용은 .crt로 바꿔줘야 하는것 같다.(확실치 않음) 변환을 위해 리눅스의 openssl을 이용하게 된다. (없으면 설치하기) sudo openssl x509 -inform DEM -in myssl.cer -out ./myssl.crt 해당 명령어를 통해 .crt로 바꿀수있다.(mv로 이름만 바꿔봤는데 안되서 찾아봤다. 해당 명령어의..