일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- ESXi
- otter
- beebox
- SQL Injection
- 안드로이드
- 2018
- elasticsearch
- XSS
- Docker
- vulnhub
- 파이썬
- CTF-d
- logstash
- Openstack
- Reflected XSS
- Volatility
- Suninatas
- 인시큐어뱅크
- InsecureBank
- diva
- igoat
- MFT
- kibana
- lord of sql injection
- NTFS
- frida
- base64
- Strings
- ctf
- foremost
- Today
- Total
목록전체 글 (426)
Information Security
루팅 패치 프로그램을 통해 디바이스 루팅을 진행할 때 해당 프로그램은 디바이스의 boot 이미지의 특정 설정 값을 수정하게 된다. 그리고 이러한 설정들은 시스템 속성 파일인 build.prop 파일에 반영되어 디바이스 부팅 시 참조하게 된다. Bypass Build-Tags 항목은 안드로이드 시스템 파일인 build.prop 파일의 속성 값을 검사하여 비정상 값이 존재할 경우 루팅 디바이스로 판단해 탐지하게 된다. 아래와 같은 내용을 확인 /system 디렉터리 위치에서 build.prop 파일 확인 build.prop 시스템의 속성 값을 확인 getprop 명령어로 속성 값 확인 isCheckRootingKeys() 함수는 Bypass Module 탐지 결과를 반환해 주는 역할을 한다. 시스템 속성 값..
모든 OS에는 운영체제가 어떤 프로세스를 실행시킬 때 경로를 참조할 수 있도록 PATH 환경 변수가 제공된다. 이는 리눅스 커널 기반인 안드로이드 OS도 동일하다. 셸에서 명령어 사용 시 시스템 환경 변수에 등록된 PATH를 참조해 명령어를 찾고 실행시킨다. Bypass Command Execution 항목은 이러한 특징을 이용하여 which 명령어를 사용해 PATH 변수에 등록된 디렉터리 경로에 "su" 바이너리 파일이 위치하는지 검사하고 파일 존재 시 루팅 디바이스로 판단하여 탐지하게 된다. 아래와 같이 내용 확인 PATH 환경변수에 등록된 내용 확인 Runtime.exec()는 Windows, Linux, Unix 등의 시스템 명령어를 Java를 통해 실행한 후 그 결과를 받아오는 기능을 가지고 있..
디바이스 루팅 시 사용된 응용프로그램 종류에 따라 특정 바이너리 파일들이 설치되거나, 공격자들의 악의적인 행위 및 시스템 설정 변경을 위하여 특정 명령어 파일들을 설치한다. 대표적인 명령어 파일에는 su, busybox, magisk 등이 있다. Bypass Binaries 항목은 디바이스 내의 바이너리 파일들을 검사하여 루팅 시 사용되는 명령어 파일들이 존재할 경우 루팅 디바이스로 판단하여 탐지한다. 아래와 같은 내용을 확인할 수 있다. busybox 명령어를 입력하면 아래와 같이 명령어를 확인할 수 있다. isCheckRootingBinary() 함수는 Bypass Binaries 탐지 결과를 반환해 주는 역할을 한다. 코드를 보면 rootingPath에서 시스템 디렉터리 목록을 가져오고 있으며 ro..
디바이스 루팅 시 사용된 응용프로그램 종류에 따라 내부 저장소에 특정 패키지들이 설치되거나, 공격자들이 앱 분석 및 악의적인 행위를 위하여 특정 앱을 설치한다. 대표적인 앱으로는 magisk, BusyBox, Toolkit, Dex Manager 등이 있으며, 이러한 앱들은 특정 동작 수행을 위해 관리자 권한을 획득하거나 또는 디바이스 정보를 변경하는 데 사용된다. Bypass Packages 항목은 디바이스에 설치된 앱 패키지 목록을 검사하여 루팅 시 설치되는 앱 또는 루팅 디바이스에서만 활용되는 앱들이 존재하는 확인한다. 루팅 Bypass packages 문제를 풀 것이다. 마우스로 클릭하면 아래와 같이 내용을 확인할 수 있다. Fail이 보이는 것을 알 수 있다. APK 파일을 압축푼 후에 JEB ..
JDK 1.8을 설치한다. JDK 1.8 설치된 경로를 확인한다. Lena WAS 압축파일을 해제한다. /bin 디렉터리로 이동하면 lenactl.sh 설치파일을 확 lenactl.sh create lena-was 명령어로 실행하면 디렉터리 이름 설정 후 포트 설정 그리고 존재하는 계정을 입력한다. 설치한 디렉터리로 이동 후 start.sh 명령어 입력하면 실행되는 것을 확 프로세스를 확인하면 Lena-was가 동작하는 것을 확인 LENA WAS 디폴트페이지가 보이는 것을 알 수 있다.
DB2 설치파일 압축을 푼다. 압축을 풀면 server_dec 디렉터리가 생성되어 파일들을 확인한다. db2_install 설치파일을 실행한다. 설치경로 디폴트 /opt/ibm/db2/V11.5 그리고 SERVER 선택한다. pureScale 환경을 사용하지 않기 때문에 no를 선택한다. 설치가 완료되면 db2 프로세스가 활성화되어 있는 것을 알 수 있다. /opt/ibm/db2/V11.5 디렉터리에 파일들을 알 수 있다. instacne 디렉터리로 이동 후 아래와 같은 명령어로 db2 계정을 생성한다. 생성된 계정으로 db2를 실행시키고 SAMPLE 데이터 베이스를 생성한다. db2 명령어로 입력 후 sample 데이터베이스에 접속한다.
설정 파일들에는 구성 요소의 원활한 기능을 수행하는데 필요한 중요한 매개변수와 정보가 들어있다. 권한이 없는 사용자가 의도적으로 또는 실수로 매개변수나 파일 자체를 수정하거나 삭제하면 심각한 가용성 문제로 인해 다른 사용자에게 서비스가 거부될 수 있다. 따라서 중요한 설정 파일의 접근권한은 엄격하게 설정해야 한다. 양호 : 이미지 스토리지 설정 파일의 퍼미션이 640 또는 그보다 엄격한 경우 취약 : 이미지 스토리지 설정 파일의 퍼미션이 최소 640으로 되어 있지 않은 경우 ▶ 이미지 스토리지 설정파일의 퍼미션이 640이하로 되어있는지 확인 # ll /etc/glance/glance-api-paste.ini # ll /etc/glance/glance-api.conf # ll /etc/glance/glan..
설정 파일들에는 구성 요소의 원활한 기능을 수행하는데 필요한 중요한 매개변수와 정보가 들어있다. 권한이 없는 사용자가 의도적으로 또는 실수로 매개변수나 파일 자체를 수정하거나 삭제하면 심각한 가용성 문제로 인해 다른 사용자에게 서비스가 거부될 수 있다. 따라서 중요한 설정 파일들의 소유자 및 소유그룹은 root/glance로 설정해야 한다. 양호 : 이미지 스토리지 설정 파일의 소유자 및 소유그룹이 root/glance로 되어 있는 경우 취약 : 이미지 스토리지 설정 파일의 소유자 및 소유그룹이 root/glance로 되어있지 않은 경우 ▶ 이미지 스토리지 설정파일의 소유자 소유그룹이 root/glance로 출력되는지 확인 # ll /etc/glance/glance-api-paste.ini # ll /e..