내가 2021년에 들었던 노래들

올해 들었던 노래들을 월별로 정리해보고 싶어서 블로그에 포스팅을 하게 되었다. 전문가가 아니라 어떤 음악이 왜 좋았고 음계와 짜임새가 어떻고 가사가 어떻고 향후에 뭐가 기대가 되고 이런 평까지는 못 남긴다는 점은 미리 양해를 구한다. 올 한해는 고등학교 3학년 시절만큼 깊고 다양한 감정선을 겪었던 한 해였고, 덕분에 느낀 것이 많았는데 이제 올해가 지나갔다는 사실이 많이 아쉽다. 흑흑 1월 : 我愛你 일본 인디밴드 Cody・Lee(李)의 https://www.youtube.com/watch?v=uwS__WiOYTI 뮤직비디오가 상당히 인상적이었던 탓에 뇌리에 꽂힌 음악이다. 그래서 해당 곡이 수록된 앨범도 들어봤는데 앨범이 전반적으로 내 취향에 맞는 노래들이었다. 이 앨범에 수록된 노래를 듣다보면 도쿄에..

2021년 회고

고등학교를 졸업하고 대학에 입학한 것도 엊그제 같은데 벌써 2021년이 끝나간다. 늘 그렇듯 한 주 한 주 바쁘게 살아가다보면 금세 계절이 바뀌고 해가 지나간다. 고등학교 시절에는 시험을 하나씩 해치울 때마다 시간이 흘러감을 느꼈지만 이제는 그런 새도 없이 시간이 흘러간다. 각설하고 내 올해를 추억해보고 싶어서 이 글을 작성하게 되었다. '기술적으로 크게 발전한 해였나?'라고 하면 그렇다고는 할 수 없을 것 같다. 고등학교 시절에야 아무래도 친구들과 붙어다니면서 강제적으로 컴퓨터 앞에 앉아 공부를 하게 되었다면 지금은 그렇지는 않으니깐. 물론 기술적으로 발전하지 못했던 것은 아니다. 첫번째로 회사 CTF 플랫폼인 사이버드릴시스템의 프론트/백엔드를 모두 개발하면서 작년까지만 해도 어려움을 느꼈던 아시바 갑..

nginx module 로드하는 방법

ㄹㅇㅋㅋ

CTF는 해커들의 시야를 좁히는가?

최근에 Team H4C라는 해킹팀에서 주최한 행사에서 'Young CTF Player가 성인이 되었을 때' 라는 주제로, 내가 청소년 때 알았으면 좋았을 것들을 이야기 한 적이 있다. 여러 주제에 대해 주저리 이야기했지만 그 중에서 주된 얘기는 'CTF는 보안 시장의 전부가 아니다'는 점이었다. 고등학교 시절 나는, 압박감과 열등감 속에서 살았던 것 같다. 압박감은 남들보다 비교적 일찍 시작한 BoB 생활로 시작되었다. 나는 그 당시, 또래 친구들 중 제일 첫번째로 BoB에 합격한다. 밑져야 본전으로 시작한 자기소개서로 덜컥 합격해버렸고, 그때까지도 부족했던 내 실력은 합격을 뒷받침해주지 못했다. 누군가는 비오비의 합격 기준이 불만족스럽다면서 내가 합격한 것을 예로 들어 욕했고, 그것을 알게 된 나는 내..

팀플은 좀 더 공격적일 필요가 있다.

팀플은 좀 더 공격적일 필요가 있다. 재학하는 4년 동안, 그리고 실무를 맡으면서 경험했었던 수많은 팀플들에서 굉장히 공통적인 특성을 발견했는데 바로 "사린다는 것". 상대방이 공격당한다고 느낄 것만 같아서, 그리고 그와 동시에 나에게도 그 공격이 돌아올까봐 겁나서 자신의 의견을 못 내고 쭈뼛쭈뼛 굴고야 마는것이다. 이게 뭐가 문제인지는 다들 한 번 쯤 경험해 봤을 것이다.회의 딱 시작해놓고 무슨 말부터 꺼내야 할 지 잘 모르겠고, 어색한 침묵만 감돌다가 누가 버티지 못하고 뭔가 말을 꺼내면 나머지 사람들은 아예 마이크도 캠도 꺼버린채로 있다가, 얘기 다 끝나면 딱히 동의도, 반박도 하지 않은 채로 멀뚱멀뚱... 그러고는 얘기 꺼낸사람이 "그..러면 ~~하는거 괜찮을까요?" 라고 조심스럽게 말하면, 다들..

경력은 전혀 무시할 것이 안된다는 생각

회사에서 내가 주도적으로 개발하고 있는 풀스택 프로젝트 하나가 있다. React를 시작으로 프론트엔드를 시작한지 얼마 안되긴 했지만 여럿 회사 프로젝트를 주먹구구식으로 개발하다보니 꽤 익숙해져서 이젠 프론트엔드 업무도 마다하지 않는 편이다. 최근엔 한 기관에서 우리 회사에 요청한 사항이 있었다. 나는 일주일 쯤이면 적당히 완성할 수 있겠다싶어 지난주 화요일부터 슬슬 개발해 그 주 목요일 저녁 즈음에 윤곽이 잡혔다. 근데 기능 구현 마감일이었던 금요일까지 못할 것 같아, 같은 회사에 다니는 고등학교 선배에게 부탁드렸는데 그 기능이 무려 2시간 30분,, 만에 완성되어 있었다. (내가 나쁜 놈처럼 보이긴하는데,, 말하자면 좀 복잡함) 내가 거의 1일 3시간, 사흘간 붙잡고 있던 것을 무슨 2시간 반만에 끝낸..

Search by function returns in Django Admin

장고를 사용하다 보면 search_fields 를 사용할 일이 생기는데, 이때 여러 fields 간의 결합된 것들 중 검색하고 싶을 때는 어떻게 해야하는지 단서를 제공할 수 있는 글이다. from django.contrib import admin from django.contrib.auth import get_user_model from django.contrib.auth.admin import UserAdmin User = get_user_model() class CustomUserAdmin(UserAdmin): search_fields = ['username'] # search by username def get_search_results(self, request, queryset, search_te..

React Semantic UI vs. Chakra UI

Semantic UI 장점 사용이 매우 간편하다. 공식 홈페이지에 컴포넌트 별로 props도 정리가 잘 되어있고 사용법도 상세하게 잘 나와있음. 디자인. 사용하기 직관적이고 일관적이었음. 미리 구현된 것이 많아서 빠르고 편하게 사용할 수 있다는 장점이 있음. 단점 계속 사용하게 되면 Bootstrap처럼 개성없는 디자인으로 변질될 가능성이 있어 보인다. (다행히 아직 React의 시장 점유율이 낮아서 망정이지) 살짝 밋밋한 느낌? Bootstrap 보다는 낫지만 그래도 어딘가 부족해보인다. Chakra UI 장점 디자인이 정말 깔끔하고 모던하게 예쁘다. 어떤 단점이 있어도 디자인이 깔끔하고 모던하다는게 단점을 압도할 수 있을 것 같음. 단점 구현된게 별로 없어서 내가 컴포넌트를 만들어가면서 해야한다는게...

HackTheBox Heist write-up

타겟 분석 $ nmap -A -T4 10.129.23.138 Nmap scan report for 10.129.23.138 Host is up (0.19s latency). Not shown: 997 filtered ports PORT STATE SERVICE VERSION 80/tcp open http Microsoft IIS httpd 10.0 | http-cookie-flags: | /: | PHPSESSID: |_ httponly flag not set | http-methods: |_ Potentially risky methods: TRACE |_http-server-header: Microsoft-IIS/10.0 | http-title: Support Login Page |_Requested ..

webhacking.kr slipping beauty write-up

오늘 기계학습 시험을 봤는데 너무 망쳐서 그냥 웹해킹이나 더 공부하려고 webhacking.kr 문제를 풀었다. highlight_file() 을 통해 소스가 제공되는 문제이다. 한눈에 봐도 Attack Surface가 2가지 정도 보인다. File Upload 기능과 PHP Zip wrapper를 통한 file read 기능이 그것이다. 1 트. 일단 이 공격을 ZIP Slipping 이라고 했던 것 같은데, symbolic linked file을 zip하여 arbitrary file read까지 할 수 있다는 사실을 알고 있는 상태였다. + TMI ) 고등학교 1학년 때 BoB WEB CTF였나? 거기서 성준이형이 이 공격을 사용해 출제한 문제를 풀면서 알게됐던 공격이다. 이런 식으로도 공격이 되는구..