본문 바로가기

Exception2

C++ 의 예외처리 메커니즘 C++ 은 구조적으로 예외를 처리할 수 있는 메커니즘을 제공한다. 이 메커니즘을 이용하면, 코드의 가독성과 유지 보수성을 높일 수 있다. 예외의 처리를 프로그램의 일반적인 흐름에서 독립시키는 것이 가능하기 때문이다. C++의 예외처리 메커니즘 이해 : try와 catch 그리고 throw의 이해 예외 처리 메커니즘과 관련해서 익숙해져야 할 세 가지 키워드는 다음과 같다. try 예외를 발견한다. catch 예외를 잡는다. throw 예외를 던진다. try 블록 try 블록은 예외발생에 대한 검사의 범위를 지정할 때 사용된다. 즉, try 블록 내에서 예외가 발생하면, 이는 C++의 예외처리 메커니즘에 의해서 처리가 된다. try { // 예외발생 예상지역 } catch 블록 catch 블록은 try 블록.. 2023. 2. 10.
안티 디버깅 Dynamic 안티 디버깅 분류 Static, Dynamic - Static 기법은 디버깅 시작할 때 한번만 해체를 해주는 기법 - Dynamic 기법은 디버깅을 진행하면서 (해당 Anti기법을) 만날 때마다 해결하는 기법 Dynamic 안티 디버깅의 목적 목적은 내부 코드와 데이터를 리버싱으로부터 감추고 보호하는 것. 보통PE 프로텍터들에서 많이 사용되며 원본 프로그램의 핵심 알고리즘을 보호하기 위하여 사용됩니다. 디버거로 해당 프로그램이 실행될 수는 있을지언정 원본 프로그램의 핵심코드(OEP)로 트레이싱 하여 찾아갈 수 없도록 방해합니다. 예외 예외(Exception)를 이용하는 방법은 안티 디버깅의 단골 메뉴입니다. 정상적으로 실행된 프로세스에서 예외가 발생하면 SEH(Structured Exception Han.. 2022. 10. 5.
반응형