2024 DEF CON 32 후기 (feat. 좌석 업그레이드, 블랙뱃지)

이미지
Incheon -> Las Vegas 12시간의 비행은 언제나 험난한 여정이다...   비행기에서 편하게 누워 잘 수 있기를 바라며, 좌석 업그레이드라는 행운이 찾아오길 기다려 보지만, 현실은 그리 달갑지 않았다. 예전에 동료가 운 좋게 업그레이드되는 모습을 옆에서 지켜본 적은 있지만, 나에게 그런 기적은 일어나지 않았다. ㅠㅠ 그런데 이번에는 뭔가 달랐다! 팀 동료가 오버부킹 때문에 온라인 체크인에서 좌석을 고를 수 없었다는 소식을 듣자, 혹시나 하는 마음에 엄청난 기대감을 품고 카운터로 향했다.  두 손을 모아 간절히 바랐지만, 현실은 여전히 차가웠다. 원래 예약한 그 좌석, 그 자리로 확정...ㅋㅋ 그렇게 아쉬운 마음을 안고 라운지에서 열심히 먹으면서 속을 달랬다. 그러던 중, 함께 가던 동료가 갑자기 좌석이 변경되었다는 소식을 들었다.  이럴 수가! 설마 나도?! 하고 앱을 확인해보는 순간...!! 예~~~ 승급 !! 두근두근 하이볼과 연어 타르타르 하늘 위에서 즐기는 스테이크 !? 🍽️ 🍨☕ 빠질수 없는 라면 🍜ㅋㅋㅋ 정말 열심히 즐기느라 잠을 못 잤다 ㅋㅋㅋㅋㅋㅋ DEF CON 32 CTF 1, 2일 차는 호텔에서 했고, 마지막 3일 차에는 드디어 대회장으로 향했다. 스코어보드 대회에 대해 특별히 할 말은 없지만, 뭐... 공격하고 방어하고, 다들 아시죠? ㅎㅎ 이번 대회도 연합팀으로 플레이했는데, 항상 그렇듯이 뛰어난 팀원들 덕분에 자극도 많이 받았다. "저 사람들은 대체 어떻게 저렇게 잘할까?"라는 생각이 들 만큼 말이다.  DEF CON 32 Closing Ceremony 항상 CTF 한다고 행사장에는 못 갔는데 이런 크기의 행사장이 4개나 있다니...?! 그리고 일반 뱃지와 블랙 뱃지! 개인적인 의견이지만, 올해는 일반 뱃지가 더 예쁜 것 같다는 건 나만의 생각일까…? ㅋㅋㅋㅋ 아무튼, 그 반짝이는 뱃지들을 보니 왠지 모를 뿌듯함이 느껴졌다. 마지막으로 공항으로 가는 길, 벨라지오 호텔의 분수쇼를 봤다. 비행기를

악성(피싱) 앱 분석기

이미지
- 분석은 예전에 했는데 시간이 바쁘다는 핑계로 글은 이제서야 쓰게 되었습니다. T.T - 악성코드를 주로 다루지 않다보니 잘못된 부분이 있을 수 있습니다. 해당 부분에 대해 알려주시면 감사하겠습니다. # 발단 최근 들어 피싱 문자가 많이 늘어난게 보인다. 지인에게 short url 서비스로 보내진 주소를 공유받아 접속해보았다. 처음 부터 흥미를 자극하는 난독화된 JS 코드가 보인다. ... 코드 마지막 부분에 보면 함수 호출`()`로 끝난다. 실제 로직이 포함된 코드를 실행하기 위해 마지막에 함수 호출을 할테니 해당 부분을 빼고 콘솔에서 실행해보았다. ```javascript (function anonymous( ) { var rNsMwWzBiNaSuYcTeJbHfLvZlTaRjBaMoZkUfOsFqMcGkCtRjUsKuSwHrYwVgXaSkUhKjPnFkPvDoMlQkTwJbAyDuZvV = { yCdZwGrUaDePkOsWuVyCuEpSdNfQsWaEjFeCgRaLkIt: function () { var u = navigator.userAgent, app = navigator.appVersion; return { uQnJaNmSpFjMeVbT: u.indexOf('Trident') > -1, lWtPeOsDbQnQbFiLdFpNfPaLxAzFeKvZyQzRcMlWnEpS: u.indexOf('Presto') > -1, gPxUjAsWuQnQuEaLkHyPoFjNuXpOyBhWjTdVfQbDoNyUfPgRjUwHzJiXaFeDnFwVfDpAzTyD: u.indexOf('AppleWebKit') > -1, nQzDtOzQiMiLpLpMdSwOyPhFxIeJnYiEwGrCfLjNfVgKuFiLrJuLvFqIsCuLkCfWlDcLrXvBuMsYjB: u.indexOf('Gecko') > -1 &&

나의 유용한 맥 앱

이미지
맥북을 사용하면서 좋았던 앱들을 추후에도 까먹지 않고 사용하기 위해 기록하여 남겨두려고 작성하게 되었습니다. Last Update: 2020-05-27 - Snappy (무료) Link:  https://apps.apple.com/app/snappyapp/id512617038 화면 캡처 및 관리 도구 분석 중에 화면을 왔다 갔다 하면서 봐야 하는 경우 아래 그림과 같이 스크린샷을 찍으면 해당 화면에 고정적으로 나오게 할 수 있어서 분석한 코드 보면서 PoC코드 짜거나 할 때 편하다. - Tunnelblick (무료) Link:  https://tunnelblick.net/downloads.html openVPN client, 맥 사용자 대부분이 사용하길래 따라서 사용했는데 크게 불편한 부분은 없어서 계속 사용 중. - Keka (무료) Link:  https://www.keka.io/ 윈도우랑 맥에서 압축 관련해서 파일 제목 깨지는 경우가 많은데 Keka 사용하면 압축이 잘 풀린다. - MTMR (무료) Link:  https://mtmr.app/ Github:  https://github.com/Toxblh/MTMR 터치바 커스텀 마이징. Json 형태로 이루어진 설정 파일 수정을 통해 원하는 터치바로 꾸밀 수 있다. - parallels (유료) Link:  https://www.parallels.com/ 가상화 프로그램. 맥 사용하면서도 은행/업무 등의 이유로 윈도우 또는 리눅스 사용해야 해서 구매하게 되었다. 블랙 프라이데이 할인으로 사면 조금은 저렴하게 구매할 수 있다.

SSRF to Redis

SSRF (Server-Side Request Forgery) SSRF는 서버의 요청을 변조하여 원하는 데이터 또는 원하는 타겟에 대해 서버의 자원을 이용해 요청을 보내는 공격 방법입니다. 다수의 마이크로 서비스로 이루어지는 모던 스택 또는 다른 서비스와 상호작용하는 형태에서 다른 서비스에 접근하여 취약점을 유발하는 SSRF취약점의 가치는 증가하게 되었습니다. Redis Key-Value 데이터 모델을 가진 NoSQL 데이터베이스입니다. 데이터를 메모리에 저장하는 인메모리 데이터베이스로 read/write 속도가 빠르다는 장점으로 대중적으로 많이 사용되고 있습니다. Redis는 왜 해커의 타겟이 되었나? Redis는 SSRF취약점 발생 시 주로 타겟이 되는 서비스 중 하나입니다. 이에 대한 이유는 아래와 같다고 생각됩니다. - 인증 체계 기본적으로 Redis는 인증 체계가 없으며, bind 127.0.0.1, port 6379로 서비스가 설정됩니다.  redis.conf의 내용 중 port와 bind에 대한 내용입니다. ```apache # Accept connections on the specified port, default is 6379. # If port 0 is specified Redis will not listen on a TCP socket. port 6379 ... # By default Redis listens for connections from all the network interfaces # available on the server. It is possible to listen to just one or multiple # interfaces using the "bind" configuration directive, followed by one or # more IP addresses. # # Examples: # # bind 192.168.1.100 10.0.0.1 bind 12

[python-markdown2] safe_mode Filter bypass 분석글

이미지
개요 * 작성일 기준 version: 2.3.8 ( https://github.com/trentm/python-markdown2/tree/4d2fc792abd7fbf8ddec937812857f13fded61cf ) CTF하다가 markdown2 모듈을 사용하길래 해당 모듈 찾아보다가 아래 이슈를 발견하였다. https://github.com/trentm/python-markdown2/issues/341 Filter Bypass ????!! - Expected Result ```python >>> import markdown2 >>> markdown2.markdown("[<script>alert(1)</script>]()", safe_mode=True) '<p><a href="#">[HTML_REMOVED]alert(1)[HTML_REMOVED]</a></p>\n' ``` - Issue Payload ```python >>> import markdown2 >>> markdown2.markdown('<http://g<!s://q?<!-<[<script>alert(1);/\*](http://g)->a><http://g<!s://g.c?<!-<[a\\*/</script>alert(1);/*](http://g)->a>', safe_mode=True) '<p><http://g<!s://q?<!-&lt;<a href="http://g"><script>alert(1);/*</a>->a><http://g<!s://g.c?<!-&lt;<a href=&

2019 미국 방문기

이미지
Day 1 ( Incheon -> Las Vegas) 비행기 출발 전 저녁 9시에 출발해서 12시간 쯤 걸려서 라스베가스(LAS)에 도착했다. (비행기 안에서 죽는줄 알았다. ㅡ.ㅡ) 너무 피곤해서 도착하자마자 바로 호텔로갔다. 이번에는 Bally's Hotel로 예약을 했다. Bally's Hotel Room 장시간 비행 + 시차로 인해 피곤해서 밥먹고 바로 잤다. 호텔 주변 식당에서 먹은건데 너무 피곤해서 맛도 기억이 안난다.... Day 2 라스베가스에 머무는 기간이 짧아서 조금 무리한 일정으로 그랜드 캐니언 밤도깨비 투어를 신청했다. 새벽에 출발하는 일정이고 그랜드 캐니언까지 가는 차에서 자면되겠지 하면서 신청했는데 자도 자도 너무 힘들었다. I LOVE LASVEGAS ! 사진으로 다 담을수 없어서 아쉽다. ㅠ.ㅠ 가는 길 중간 중간에 멈춰서 사진을 찍었다. 원래 같이 가는 일정을 신청한게 나 포함 6명이였는데 가는 포인트마다 아는 사람을 만나서 재미있게 놀았다. 거의 다 도착해서 밥을 먹었다. 그쯤 해가 뜨기 시작했다. WoW ~! WoW 22 해가 뜨니 풍경들이 보이기 시작했다. 그리고 앤텔로프 캐니언와 홀스슈 밴드에 갔었다. 해가 뜰때 풍경은 좋았는데, 사막이라는걸 몸소 느낄 수 있었다. 덥고 해가 너무 뜨거웠다. 그래서 그랜드 캐니언은 한번 갔다오면 기가 다 빠지는거 같다.  그렇게 투어하고 호텔로 돌아가는 길에 인앤아웃버거 먹고 바로 잤다. Day 3 오전에는 뭐했는지 정확히 기억이 안난다. ㅡ.ㅡ 그러다가 회사 사람들과 paris hotel에 있는 " Mon Ami Gabi " 레스토랑에서 저녁을 먹었다. 이때는 무슨 생각이였는지 모르겠지만 새로운걸 먹겠다고 생선 요리를 시켰다. 연어 였던걸로 기억하는데 너무 짜서 다먹지 못했다. ㅠㅠ 그리고 벨라지오