Season 1/기술 보안
-
Windows 시스템에서는 리눅스 시스템과 다르게 shell(cmd) 사용 시 로그가 기록되지 않는다. 그래서 윈도우 내에서 CMD 로그를 기록할만한 방법을 찾아봤었는데, 명령 프롬포트 수동 저장 doskey 를 이용하는 방법이다. doskey /history > 경로\log.txt 명령어를 통해 지금까지 사용한 명령어를 경로\log.txt에 저장하는 방법이다. 사실 이 방법은 현재 프롬포트에서 사용한 로그를 프롬포트를 종료하기 전에 써야하는 번거로움이 있어 불편하다. PowerShell 수동 저장 이 또한 위와 비슷하다. Get-History 는 해당 PowerShell에서 사용한 명령어들을 출력하는 명령어로, 이를 이용하여 파일 저장 위치를 지정하여 파일을 저장하는 방법이다. 즉 해당 명령어를 통해 ..
Windows 시스템 CMD 로그 기록하기Windows 시스템에서는 리눅스 시스템과 다르게 shell(cmd) 사용 시 로그가 기록되지 않는다. 그래서 윈도우 내에서 CMD 로그를 기록할만한 방법을 찾아봤었는데, 명령 프롬포트 수동 저장 doskey 를 이용하는 방법이다. doskey /history > 경로\log.txt 명령어를 통해 지금까지 사용한 명령어를 경로\log.txt에 저장하는 방법이다. 사실 이 방법은 현재 프롬포트에서 사용한 로그를 프롬포트를 종료하기 전에 써야하는 번거로움이 있어 불편하다. PowerShell 수동 저장 이 또한 위와 비슷하다. Get-History 는 해당 PowerShell에서 사용한 명령어들을 출력하는 명령어로, 이를 이용하여 파일 저장 위치를 지정하여 파일을 저장하는 방법이다. 즉 해당 명령어를 통해 ..
2023.12.31 -
안녕하세요 이번에는 Runtime 조작을 수행해 보겠습니다. 런타임 조작을 통해 앱이 실행될 때 흐름 조작, 정보 유출 등이 가능. 런타임 조작을 사용하여 인스턴스 변수 수정, 로컬 로그인 검사 우회, 무차별 강제 핀 코드 사용 가능 1. 앱 실행 Runtime Manipulation 실행 START 도전! 로그인 메소드, 인증 코드 우회 등을 수행 예정 임의의 ID/PW 입력 시 에러 발생 클래스 확인 후 의심되는 메소드 확인 예정 의심되는 메소드를 찾기 위해 frida 클래스 검색을 위해 코딩 수행 이후 프리다를 이용해 클래스 확인 해당 명령어로 조회 시 모든 클래스가 검색 되기에, find 를 이용하여 Login 문자열만 검색 검색 시 LoginValidate라는 의심가는 클래스 확인 해당 클래스를..
[IOS] DVIA 를 통한 취약점 파헤치기!(Runtime 조작)안녕하세요 이번에는 Runtime 조작을 수행해 보겠습니다. 런타임 조작을 통해 앱이 실행될 때 흐름 조작, 정보 유출 등이 가능. 런타임 조작을 사용하여 인스턴스 변수 수정, 로컬 로그인 검사 우회, 무차별 강제 핀 코드 사용 가능 1. 앱 실행 Runtime Manipulation 실행 START 도전! 로그인 메소드, 인증 코드 우회 등을 수행 예정 임의의 ID/PW 입력 시 에러 발생 클래스 확인 후 의심되는 메소드 확인 예정 의심되는 메소드를 찾기 위해 frida 클래스 검색을 위해 코딩 수행 이후 프리다를 이용해 클래스 확인 해당 명령어로 조회 시 모든 클래스가 검색 되기에, find 를 이용하여 Login 문자열만 검색 검색 시 LoginValidate라는 의심가는 클래스 확인 해당 클래스를..
2023.12.11 -
안녕하세요. 이번에는 불필요한 권한 사용하는 방버베 대한 취약점을 알아보도록 하겠습니다. 앱에 접근 권하니 필요하다는 것을 알리기 위해 UsageDescription 키를 앱으 info.plist파일에 저장 Permission Key Bluetooth NSBluetoothAlwaysUsageDescription 블루투스 사용 Calendar and Reminders NSCalendarsUsageDescription 사용자 캘린더 사용 NSRemindersUsageDescription 사용자 미리 알림 사용 Camera and Microphone NSCameraUsageDescription 카메라 사용 NSMicrophoneUsageDescription 마이크 사용 Contacts NSContactsUsa..
[IOS] DVIA 를 통한 취약점 파헤치기!(불필요한 권한 설정)안녕하세요. 이번에는 불필요한 권한 사용하는 방버베 대한 취약점을 알아보도록 하겠습니다. 앱에 접근 권하니 필요하다는 것을 알리기 위해 UsageDescription 키를 앱으 info.plist파일에 저장 Permission Key Bluetooth NSBluetoothAlwaysUsageDescription 블루투스 사용 Calendar and Reminders NSCalendarsUsageDescription 사용자 캘린더 사용 NSRemindersUsageDescription 사용자 미리 알림 사용 Camera and Microphone NSCameraUsageDescription 카메라 사용 NSMicrophoneUsageDescription 마이크 사용 Contacts NSContactsUsa..
2023.12.03 -
개요 이번 장에서는 AD 도메인 서버를 최초 구성했을 때, 기본적으로 어떤 계정이 어떤 권한을 부여받은 채로 생성되는지 기본적으로 존재하는 권한 그룹의 종류와 해당 그룹이 가지고 있는 정책에 대해서 알아보자. AD 기본 계정 최초로 AD Domain Server를 구축하게 되면 아래와 같이 세 개의 계정(Administrator, Guest, krbtgt)이 생성된다. CMD 창을 띄우서 "net /domain user {계정}" 명령을 통해해당 계정들의 상세정보를 출력해보자 1. Administrator - 설명: 도메인 최고 수준의 권한을 가진 관리자 계정 - 용도: 도메인 관리 작업, 보안 작업, 필요한 모든 작업 - 권한: *Administrators, *Group Policy Creator, *..
[Active Directory] 3장. AD 기본 계정과 권한개요 이번 장에서는 AD 도메인 서버를 최초 구성했을 때, 기본적으로 어떤 계정이 어떤 권한을 부여받은 채로 생성되는지 기본적으로 존재하는 권한 그룹의 종류와 해당 그룹이 가지고 있는 정책에 대해서 알아보자. AD 기본 계정 최초로 AD Domain Server를 구축하게 되면 아래와 같이 세 개의 계정(Administrator, Guest, krbtgt)이 생성된다. CMD 창을 띄우서 "net /domain user {계정}" 명령을 통해해당 계정들의 상세정보를 출력해보자 1. Administrator - 설명: 도메인 최고 수준의 권한을 가진 관리자 계정 - 용도: 도메인 관리 작업, 보안 작업, 필요한 모든 작업 - 권한: *Administrators, *Group Policy Creator, *..
2023.11.30 -
안녕하세요. 탈옥탐지 우회 4번쨰 시간이며, 이번에는 저번과 비슷한 방법이기에 간단하게 작성하도록 하겠습니다. DVIA Jailbreak Detection 3 번쨰 문제 클릭 해당 문구를 기드라를 통해 분석 이전 DVIA 파일을 다시 열어 줍니다. 이후에 스트링 검색을 통해 3번 문제 선택 시 출력되는 문자열 검색 해당 문자열 더블클릭하여 위치 이동 Window > Function Graph 기능을 통해 위치 확인 해당 스트링의 분기 점 확인 해당 분기점의 .true 값으로 이동 탈옥이 되지 않았다는 구문으로 갈 수 있음 확인 후 해당 1959dc 값을 확인 후 코드에 적용 프리다 동작 여부 확인 후 코드 익스플로잇 64비트의 경우 레지스터가 X 값으로 표기되며 32비트의 경우 W로 표기됨, 이에따라 X..
[IOS] DVIA 를 통한 취약점 파헤치기!(Jailbreak Detection 4)안녕하세요. 탈옥탐지 우회 4번쨰 시간이며, 이번에는 저번과 비슷한 방법이기에 간단하게 작성하도록 하겠습니다. DVIA Jailbreak Detection 3 번쨰 문제 클릭 해당 문구를 기드라를 통해 분석 이전 DVIA 파일을 다시 열어 줍니다. 이후에 스트링 검색을 통해 3번 문제 선택 시 출력되는 문자열 검색 해당 문자열 더블클릭하여 위치 이동 Window > Function Graph 기능을 통해 위치 확인 해당 스트링의 분기 점 확인 해당 분기점의 .true 값으로 이동 탈옥이 되지 않았다는 구문으로 갈 수 있음 확인 후 해당 1959dc 값을 확인 후 코드에 적용 프리다 동작 여부 확인 후 코드 익스플로잇 64비트의 경우 레지스터가 X 값으로 표기되며 32비트의 경우 W로 표기됨, 이에따라 X..
2023.11.30 -
Study 레지스터의 종류 General Purpose Registers 데이터 레지스터 RAX : 누산기로서, 연산 결과를 저장하는 데 주로 사용 RBX : 기본 레지스터로서, 데이터를 보관하거나 주소 값을 가리키는 데 사용 RCX : 주로 반복문의 카운터로 사용 RDX : 확장된 산술 연산에서 단일 레지스터의 크기를 초과할 때 추가로 사용하는 레지스터 포인터 레지스터 RBP : 스택 프레임의 기본 포인터로, 스택프레임의 시작 지점 주소(스택 복귀 주소)로 사용 RSP : 스택의 최상단(현재 스택 주소)로 사용 인덱스 레지스터 RSI : 데이터를 복사할 때 src 데이터(복사할 데이터의 주소)로 사용 RDI : 데이터를 복사할 때 복사된, dest 데이터의 주소로 사용 Segment Registers ..
[pwn.college] Assembly Crash Course - Level 7Study 레지스터의 종류 General Purpose Registers 데이터 레지스터 RAX : 누산기로서, 연산 결과를 저장하는 데 주로 사용 RBX : 기본 레지스터로서, 데이터를 보관하거나 주소 값을 가리키는 데 사용 RCX : 주로 반복문의 카운터로 사용 RDX : 확장된 산술 연산에서 단일 레지스터의 크기를 초과할 때 추가로 사용하는 레지스터 포인터 레지스터 RBP : 스택 프레임의 기본 포인터로, 스택프레임의 시작 지점 주소(스택 복귀 주소)로 사용 RSP : 스택의 최상단(현재 스택 주소)로 사용 인덱스 레지스터 RSI : 데이터를 복사할 때 src 데이터(복사할 데이터의 주소)로 사용 RDI : 데이터를 복사할 때 복사된, dest 데이터의 주소로 사용 Segment Registers ..
2023.11.30