반응형

분류 전체보기 712

[angstromCTF] Inputter - 리버싱 / argument

리버싱 문제인 Inputter 이 문제 역시 대회가 끝나고 풀어서 캡쳐를 제대로 못했다ㅜ 이전에 풀이했던 Revving Up, Taking Off 문제와 동일한 유형(조금 심화한)이다. Revving Up : https://hackingstudypad.tistory.com/33 Taking Off : https://hackingstudypad.tistory.com/34 이번 문제도 역시나 리눅스에서 실행가능한 바이너리 파일(inputter)가 주어진다. 이 문제는 앞의 문제와 다르게 소스코드도 같이 주어진다. main 함수를 살펴보면 안에 조건문(if) 세개가 있고, 조건문을 다 통과해야 마지막에 print_flag() 함수가 실행되어 플래그를 얻을 수 있다는걸 알 수 있다. 첫번째 조건문부터 살펴보자 ..

CTF/리버싱 2022.03.21

[정보통신기사] 시험정보 / 후기 / 합격률 / 공부방법

2021년 12월 취득한 정보통신기사 정보보안기사를 가져간 한국방송통신전파진흥원에서 주관하는 자격증이다. 올해부터는 개정된 내용으로 시험이 진행된다. 정보통신기사를 공부하게된 이유는 정보통신기사도 정보처리기사나, 정보보안기사처럼 네트워크에 대한 부분을 다루고, (셋다 앞에 '정보'가 붙는다.) 깊진 않지만 보안과 관련된 내용도 시험범위에 포함되어있기 때문이다. 실제로 내가 쳤던 실기시험에서 DDoS 와 관련된 문제가 출제됐었다. 정보통신기사는 1년에 3회(1,2,4회차) 시험이 치뤄진다. 나는 2021년 2회차에 필기시험을 보고 합격을 했다. 집에 찾아보니 역시나 아직도 시험지를 잘 보관하고 있었다. 원래는 8월쯤 시행될 2회차 실기시험을 바로 보려고 했는데 갑자기 또 코로나 확진자가 증가하는 바람에 접..

[Root Me] Javascript - Obfuscation 3 - 웹해킹 / 자바스크립트

세번째 Obfuscation 문제이다. Obfuscation 이란 난독화를 의미한다. 공격자가 자신의 악성코드가 들키기 않기위해, 또는 개발자가 자신의 프로그램을 분석하는것을 방지하기위해 주로 사용되는 기법이다. Obfuscation 1번 문제 : https://hackingstudypad.tistory.com/26 Obfuscation 2번 문제 : https://hackingstudypad.tistory.com/30 세번째 Obfuscation 문제 역시 페이지에 접속하면 비밀번호를 요구한다. 역시나 f12를 눌러 개발자도구를 이용해 웹 소스를 확인해본다. 뭔가 복잡한 자바스크립트 코드가 작성되어 있다. 가장먼저 dechiffre 라는 함수가 선언되어있고, 아래쪽에서 함수를 호출하고 있는 모습이 보인..

워게임/Root Me 2022.03.20

[산업보안관리사] 시험정보 / 후기 / 공부방법

2021년 7월 취득한 산업보안관리사 자격증 한국산업기술보호협회에서 주관하는 국가공인 자격증이다. 정보보안기사를 2020년 7월에 취득한 후 직접적으로 보안과 관련된 자격증은 공부를 안하다가 우연히 이런 자격증도 있다는걸 알게되어 도전했다. 유효기간이 3년으로 표시되어있지만, 3년이 지난 후 온라인 보수교육을 들으면 계속 연장이 된다. 사실상 반영구 자격증이다. 개인적으로 재미있게 공부했던 기억이 있다. 정보보안기사에서는 해킹 공격 방법, 원리, 대응방법 등등 기술적인 보안을 주로 다룬다. 하지만 산업보안관리사는 '산업보안'이라는 이름에 맞게 관리적 보안, 물리적 보안도 같이 다루고 있다. 관리적 보안에서는 산업보안관계법에 대해서 다루고 있다. 정보보안기사에서는 정보통신망법, 개인정보보호법을 다뤘다면 산..

[angstromCTF] No canary - 포너블 / 버퍼오버플로우

No canary 문제는 이번 대회에서 나온 가장 쉬운 포너블(pwnable) 문제였다. 대회가 끝나고 풀어서 문제 설명은 캡쳐를 못했다..ㅎ pwnable 이란 시스템 해킹 분야를 말한다. 어떤 프로그램의 취약점을 통해 운영체제의 권한까지 획득하는 그런 종류의 분야이다. 문제 이름이 No canary 인것도 포너블과 관계가 있다. 포너블에 자주 등장하는것이 '버퍼 오버플로우' 라고하는 취약점인데, 프로그램에서 사용자 입력값의 길이를 검증하지 않아서 발생하는 취약점이다. 버퍼 오버플로우를 설명할 때 가장 많이 쓰는 그림이다. 프로그램에서 사용자의 입력값을 받으면 buffer 라는 영역에 저장된다. 당연히 buffer 영역을 넘어가면 저장이 되지 않도록 입력값의 길이를 검증해야하는데, 버퍼오버플로우는 길이..

CTF/포너블 2022.03.19

[빅데이터분석기사] 시험정보 / 후기 / 합격률 / 공부방법

2021년 5월 취득한 빅데이터분석기사 SQLD 처럼 데이터산업진흥원에서 주최하는 시험이다. 첫 시행인 2회차에 바로 취득했다. 왜 첫 시행이 1회차가 아닌 2회차냐면, 2020년 12월 시행 예정이던 1회차 시험이 코로나 확진자 폭증으로 취소되었기 때문.. 시험이 취소되면 다음시험부터 1회차로 카운트 할줄 알았는데 1회차를 영구결번으로 만들어버렸다. 솔직히 좀 아쉽다.. 1회차 합격이라해야 멋진데 코로나만 아니었어도.. 참고로 빅데이터분석기사는 다른 국가기술자격처럼 '수첩형' 자격증이 제공되지 않는다. 수첩형을 받고싶어서 위처럼 직접 문의해봤으나 편의와 비용을 고려하여 제공하지 않는다고 한다. 수험자 입장으로서 수첩형 너무 갖고싶은데.. 누구의 편의인가.. 암튼 수첩형은 없으니 자격증 취득하면 홈페이지..

[Root Me] Javascript - Webpack - 웹해킹 / 자바스크립트

15점짜리 Javascript - Webpack 문제 Validations 를 보면 문제 풀이 횟수가 1% 밖에 안된다고 나온다. 엄청 어려운 문제인줄 알고 긴장했는데, 어이없을정도로 쉬운 문제였다. 그냥 사람들이 많이 안풀어서 그런가보다.. 참고로 webpack 은 자바스크립트 모듈화 도구 이름이다. 웹 개발할때 사용하는 도구정도로 생각하면 된다. 문제 페이지에 들어가보면 아무런 기능도 없고, 버튼만 있는데 그냥 오리와 원앙의 차이에 대해서만 알려준다. 이럴때는 역시 또 f12를 눌러서 개발자도구를 확인해준다. 개발자 도구의 '소스' 탭을 보면 웹페이지 자체에는 특이한 내용이 없는걸 볼 수 있다. 메인 페이지에서 f12를 눌렀기 때문에 위에서 봤던 This is a normal duck! 같은 글자가 ..

워게임/Root Me 2022.03.18

[SQL개발자] 시험정보 / 후기 / 공부방법

2021년 4월 취득한 SQL개발자 갑자기 SQL개발자 자격증을 따봐야겠다고 생각한건 한창 웹해킹 공부를 하고있던중에 'SQL 공부를 조금 더 해보면 SQL 인젝션 공격코드를 더 멋지게 짤 수 있지 않을까?' 라는 생각이 들었기 때문이다. 그래서 이왕 SQL 공부를 하는거 뚜렷한 결과물이 있으면 좋겠다라는 생각을 했고, 알아보다보니 국가공인 자격증인 SQL개발자를 알게되어 도전하게 되었다. SQLD 또는 SQL개발자라고 부르는데, 한단계 상위 자격증인 SQLP(SQL전문가)도 있다. 이 두 자격증 모두 국가공인이다. 참고로 SQLP는 겁나 어렵다.. 도전하실분들은 SQLD 부터 차근차근 도전하시길.. 암튼 웹헤킹을 위해 SQL개발자 공부를 하게됐는데, 지금 돌아봤을때 도움이 됐나? 생각해보면.. 흠.. ..

[angstromCTF] Consolation - 웹해킹 / 자바스크립트

웹 해킹 문제이다. 보통 CTF 문제들은 제목이나 문제 설명 부분이 큰 힌트가 되는 경우가 많다. 이 문제같은경우 살짝 꼬아놨는데 문제 이름인 Consolation 은 '위로' 라는 뜻이다. 문제 설명도 보면 I've been feeling down lately.. Cheer me up! 이라면서 뭔가 위로를 바라는것 같다. 조금뒤에 보면 알겠지만 이 문제의 의도는 'Consol' ation 이다. 다시말해 '콘솔' 창을 활용해서 풀라는 것이다. Consolation 이라는 단어로 위장한것 뿐이다. '콘솔'창을 이용해서 문제를 푸는것은 Root Me 문제풀이에서 한번 다룬적이 있다. * 링크 : https://hackingstudypad.tistory.com/36 [Root Me] Javascript -..

CTF/웹해킹 2022.03.17

[angstromCTF] Reasonably Strong Algorithm - 암호학 / RSA

암호학 문제이다. 문제 이름이 Reasonably Strong Algorithm 인데 맨 앞글자만 따면 R S A 가 된다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙인 알고리즘이다. RSA는 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계된 알고리즘이다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하는 d를 구한다.(d는 개인키로 공개하지 않는다) 4. n=pq를 계산한 후 n과 e를 공개한다..

CTF/암호학 2022.03.17
반응형