본문 바로가기

ETC

(10)
[T0M4TO] 개발과 보안의 괴리 1탄 (Authentication) 오늘 알아볼 것은, 늘 고민하고 있는 개발과 보안의 괴리에 관련한 것이다. 모두 알겠지만, 개발 기술은 정말 빠르게 진화하고 변화하고 있다. 대표적으로 몇년전에만 해도 쓰던 인증 방식인 쿠키 + 세션 조합을 이제는 잘 사용하지 않고, 토큰 + Storage를 쓴다던가... tistory는 TSSESSION이라는 쿠키에 세션을 저장하여 사용하는 전형적인 쿠키 + 세션 조합의 인증 방식을 선택하고 있다. 물론 WAS에서 직접 제공해주는 Session같은 경우에는 AutoScaling되는 환경에서는 세션이 공유가 안된다는 치명적인 문제도 발생할 수 있고, 세션이라는 방법 특성상 서버에서 인증에 걸리는 부하가 있을수 밖에 없다. 하지만 확실히 보안면에서는 안전한 편이라고 말할 수 있다. 먼저 쿠키에 저장되지만,..
[T0M4TO] Jenkins의 보안적 문제점 - 1탄 Docker Hub에 공식으로 올라와 있는 jenkins 이미지에 대한 사용 방법이다. 직접 실행해보자 ??? 안된다 ??? 공식문서에는 저렇게 작성되어있지만 실제로 jenkins 이미지를 사용하고 싶다면 'jenkins/jenkins' 이런식으로 이미지명을 작성해 주어야 한다. (문서좀 고쳐줘...) 사실 이걸 얘기하려는 것은 아니다. 이번에 얘기하고자 하는 주제는 Jenkins 구축 직후 생각한 'Jenkins의 보안적인 문제점'이다. https://www.jenkins.io/doc/book/security/securing-jenkins/ Securing Jenkins In the default configuration of Jenkins 1.x, Jenkins does not perform any ..
[T0M4TO] AWS EC2 인스턴스에 Jenkins 구축하기(학습용) CI/CD Pipeline 구성을 위해 굉장히 많이 쓰이는 Jenkins를 AWS에다 구축해보자. (CI/CD에 대한 자세한 내용은 나중에 포스팅 하겠다.) 나는 AWS EC2에 인스턴스를 올려 구축하겠지만, Docker를 이용하여 구축할 것이므로 Linux 종류는 어떤것을 써도 무방하다. (Docker 설치가 되어있다는 전제하에!) 우선 Jenkins 공식 홈페이지에 가면 jenkins/jenkins 이미지를 사용할 것을 권장한다. 이는 LTS버전의 이미지이며 이미 Docker Hub에 repository가 존재하고 있어, 구축이 용이하다. 하지만 아래에 보면 Jenkins의 모든 기능을 다 사용하고 싶다면, 아래에 있는 설명대로 설치를 진행하라고 되어있다. 응~ 안해 우리는 Jenkins의 숨겨진 기..
[T0M4TO] 공개되지 않는 안전한 Email 주소 만들기 배경 Email 주소는 정말 많은 곳에 사용된다. 회원가입을 하거나, 명세서를 받거나, 인증을 하는 등 수많은 용도로 사용되고 있다. 그런데 문득 그런 생각이 들었다. 내 Email 주소가 너무 노출되어 있는 것이 아닐까? Email 주소가 많이 쓰이면서 생기는 단점은 생각보다 많다. 공개된 Email 주소로 광고성 스팸 메일을 받을 수 있다. 공개된 Email 주소로 악성코드가 첨부되었거나, 피싱 사이트로 이동되는 악성 메일을 받는다. Email 주소에서 @ 앞쪽은 사용자의 ID인데, 대부분의 사람들이 공통적인 ID를 사용하고 있어, 공개된 Email 주소를 통해 다른 사이트의 계정을 공격당할 수 있다. Email 주소의 @ 앞쪽, 사용자의 ID를 이용하여 동의하지 않은 뒷조사를 당할 수 있다. 그렇다..
[T0M4TO] Slack Webhook 설정하기 (Slack 봇 만들기) ※ Webhook 설정방법 요약 채널명 클릭 Integrations 탭으로 이동 Add an App 버튼 클릭 incomming webhook을 검색한 뒤, Install 버튼 클릭 Add to slack 버튼 클릭 Choose a channel 부분을 클릭하여, 본인이 Webhook을 통해 메시지를 받고자 하는 채널을 선택한 뒤 Add Incomming WebHooks integration 버튼 클릭 Setup Instructions -> Example에 있는 테스트를 위한 명령어를 실행하여 채널에 메시지가 잘 오는지 확인 Webhook 설정방법 상세 먼저 채널명 옆 화살표를 눌러준다. 그러면 이렇게 상세 화면이 나올텐데, 여기서 Integrations 탭을 클릭한다. 이어 Apps 메뉴에 있는 Add..
[T0M4TO] Google Image Proxy가 뭐여...? 가끔 메일보낼때 이미지를 첨부하게 되는데, 보통은 아래 2개 방식중 하나를 택하게 된다. 내 컴퓨터에 저장된 파일 첨부하기 이미지 링크로 연결하기 요 방법 중 2번을 사용할 경우 메일을 수신한 사람은 링크에 접근해 이미지를 보게 된다. 이때 수신자가 Gmail을 사용한다면, 발신자가 건 링크를 통해 이미지를 보는게 아닌 Google image proxy를 통해 이미지를 보게 된다. 위 사진들을 보면, 발신자가 연결한 링크와 수신자가 보는 링크가 다른것을 확인할 수 있다. 열심히 설명했지만 이렇게 말로만 하면 어렵지. 내가 그린 그림을 보자 딱 이런 느낌이다. www.test.com/test.png 그림이 웃겨서 A는 B에게 메일로 공유하려 한다. A는 gmail을 사용하는 B에게 이미지 링크를 연결하여 ..
[T0M4TO] Git ID/PW(Access-token) 매번 입력에서 벗어나기 이건 분명 나만 고통받았던 것이 아닐거다. 모두들 순서는 나와 동일할 것 같다. git status git add . git commit -m "주저리주저리" git push [repo alias] [branch] ID/PW 또는 ID/Access-token 입력 이 과정을 Github나 Gitlab, Bitbucket 같은 원격 repository에 코드를 push 할 때 마다 반복했을 것이다. 특히나 5번 과정은 매우 귀찮다. 매번 인증정보를 입력해야 하니까. 그래서 ID/PW 또는 ID/Access-token 입력 없이 push 할 수 있는 방법을 정리해 보았다. 방법은 크게 두가지가 있다. - Credential 정보를 반영구 저장 하는 방식- git config --unset credential..
GITHUB Access Token을 이용하여 push 하기 나는 보통 git을 통해 github에 push를 할때, ID/PW 방식을 이용한 Basic authentication 방식을 사용하고 있었다. (보안상 매우 좋지 않습니다. 귀찮아서 계속 미루고 있던 상황) 오늘도 역시나 Basic authentication 방식으로 보안은 개나줘버려! 이러면서 push를 했고, GITHUB로 부터 한통의 메일을 받게된다. password로 repository에 접근했다. (어떤 repository인지, 접근한 tool은 무엇인지.. 등은 마스킹) 그리고 가장 중요한 것. Basic authentication 방식은 곧 동작하지 않을것이다. (F/O 예고...) 그렇다. 미루고 미루던 작업을 해야할 수 밖에 없게 되었다. GITHUB Access token 만들기! 방..