분류 전체보기 108

[AUTOSAR] AUTOSAR_Tutorial

AUTOSAR : System Architecture → 코딩 전단계까지 (Configuration까지) AUTOSAR 장점 OTA 시 테스팅 시간, 비용 절감 가능 → 무선으로 가능하므로 잘못되면 수정 가능 (조건 : OTA 를 위해 메모리 기본 2배 이상 되어야 함 (다운로드 + 기존 동작 위함)) AUTOSAR Main Working Topics 1 .Architecture : 소프트웨어 스택 2. Methodology ① 소프트웨어를 어떻게 개발할것인지? ② 저장 포맷(표준화함) → arxml(확장자) 생성 3. Application Interfaces 더보기 Mobilgene : Authoring tool → arxml 파일 읽어서 C코드 생성해주는 tool Technical Scope of A..

IVS 2024.02.01

[OTA] UDS : TP (Transport Protocol)

1) Single Frame : 7바이트 이하의 데이터 Single Frame (1) 첫 번째 바이트(PCI : Protocol Information) : 상위 4비트 - Single Frame을 알려주는 값인 0을 담음 하위 4비트 - Data Length (2) 나머지 바이트(7Byte) (3) 흐름 2) Multi-Frame Message Packet : 7바이트보다 큰 데이터 : Multi-Frame Message Packet 을 통해 통신 Multi-Frame Message Packet : First Frame(시작 프레임) x 1 + Consecutive Frame x n 2-1) First Frame First Frame (1) 첫 번째 바이트(PCI : Protocol Information..

IVS 2024.01.03

CodeEngn.com Basic RCE L12

12번 문제 : key 값과 그 key 값이 MessageBox에 출력되도록 하기 위해 수정해야 할 주소 영역을 구하는 것 12.exe파일을 실행하였더니 Key를 입력하는 창이 나왔고, Check를 눌러도 변화가 없었다. About을 눌러보니 알맞은 key값을 구하라는 메시지가 나왔다. PEiD를 통해 정보를 확인해 보았더니 패킹이 되어있지는 않았다. 올리디버거로 실행해서 Key값에 ‘1’를 입력하였다. 그랬더니 EAX에 1이 저장되는 것을 볼 수 있었다. 즉, 내가 Key값으로 입력한 값이 EAX에 대입되는 것을 확인할 수 있다. 올리디버거로 12.exe을 열었다. “Congratulation ...”와 같이 성공을 나타내는 문자열이 보인다. 위쪽에 CALL 부분이 있어서 그 부분을 break걸었다. ..

CodeEngn 2024.01.03

Reversing.kr - Ransomware

file, readme.txt, run.exe파일이 주어졌다. readme.txt의 내용이다. run.exe을 실행하면 Key값을 입력하게 되어있었고, 임의의 값인 abc를 입력하였더니 위와 같은 문구가 떴다. PEiD를 통해 run.exe의 정보를 보았더니 UPX로 패킹이 되어있음을 알 수 있었다. 패킹되어있던 run.exe를 upx.exe를 통해 언패킹해주었다. run.exe를 올리디버거를 통해 분석해보았다. 이 부분은 반복문을 돌면서 암호화된 파일을 읽어오는 부분이다. 이 부분은 입력 받은 key값을 이용해서 암호화된 파일을 복호화하는 부분이다. 복호화하는 방식을 정리하면 1. 파일에서 한 바이트 씩 가져온다. 2. key값과 XOR연산을 한다. 3. 0xFF와 다시 XOR한다. key값을 구하기 ..

[CTF]Reversing.kr 2023.12.29

Reversing.kr - Easy Keygen

Easy Keygen.exe와 ReadMe.txt파일이 주어진다. ReadMe.txt를 확인해보니 Serial이 5B134977135E7D13일 때 Name을 찾으면 해결되는 것 같다. PEiD를 통해 Easy Keygen.exe파일이 패킹이 되어 있지 않음을 알 수 있다. strings를 확인하였더니 “Correct!”와 “Wrong”이 있었고, “Correct!”부분으로 이동하였다. 이 부분은 Serial을 생성하는 루틴이 담겨있다. 1. 입력 받은 문자열들을 하나씩 가져온다. 2. 0x10, 0x20, 0x30을 반복하면서 xor연산을 한다. 3. ESI에 생성한 Serial값을 저장한다. 4. 입력 받은 Serial 값과 비교해서 일치하면 “Correct!”, 실패하면 “Wrong!”이 있는 곳으..

[CTF]Reversing.kr 2023.12.29