본문 바로가기

전체 글286

Python - smtplib 기본 라이브러리를 이용한 text/html 메일 보내기 대부분 프로그래밍에서는 메일 전달과 관련된 기본 라이브러리 및 예제 코드를 제공하고 있다. 오늘은 Python 부분에 대해서 메일 전송 방안에 대해 정리해 보고자 한다. 여기에서는 기본 라이브러리를 활용한 방안에 대해서 정리해 보도록 하겠다. MailSender 함수 만들기 메일에 내용이나 본문이 변경될 수 있기 때문에 아래와 같이 함수를 선언하여 사용하는 것을 추천한다. 아래 코드에서 유심있게 봐야하는 부분은 보내야 하는 대상 즉 To가 여러명일 경우, sendmail 에서의 To 데이터와 Message["To"]에 들어가는 데이터 형식이 다르다는 것이다. smtplib 의 sendmail 에서는 []를 이용한 리스트 형태로 들어가야 한다. 하지만 message["To"] 에서는 string으로 들어가.. 2021. 9. 6.
Splunk - Search Job and Share Splunk는 기본적으로 Search 를 진행할 때 Job 기반으로 처리하게 된다. 해당 작업에 대한 리스트는 Activity --> Jobs 에서 확인 할 수 있다. Job에는 검색한 결과를 보관하도록 되어 있는데, 이를 공유할 수 있는 방법에 대해 짧게 정리해 본다. 작업을 공유하기 위해서는 검색을 완료하게 되면, Edit Job Settings을 통해 할 수 있다. JobSettings 에 들어가면, 현재 설정이 나타난다. 기본설정으로는 Private(비공개), Lifetime(결과 저장 시간) 10분으로 설정되어 있다. 결과 저장 시간이 왜 짧은가? 라는 질문이 있을 수 있는데, Activity --> Jobs 에 들어가 보면, 작업별로 용량을 차지하는 것을 알 수 있다. 만약에 기업에서 사용하는.. 2021. 8. 25.
Python - snake_case, camel_case, upper_case naming style 이란 코드 네이밍은 서로 몇가지 규칙을 개발자들 사이에서 코드 가독성과 공유시 보다 이해가 쉽도록 하는데 있다. 필수도 지킬 필요는 없지만, 동일한 규칙을 사용하게 되면, 서로 다른 개발자가 개발한 코드라도 이해도가 높아지고 코드의 완성도가 높아지기 때문에 되도록이면 규칙을 정해서 사용하는 것이 좋다. 오늘은 Python 의 Linting highlights syntactical and stylistic problems와 Code Quality 로 활용할 수 있는 Linting 기능을 이용하면 Snake_case Name 경고를 볼 수 있는데, Python에서 추천하는 Code Naming인 Snake Case와 그외 많이 사용하는 Camel Case, 그리고 Upper Case에 대해서 정리해 보겠다. Sn.. 2021. 8. 24.
Python - Boto3 lib paginator 통한 S3 대량 데이터 가져오기 Boto3 라이브러리는 Python에서 AWS 리소스를 사용하기 위해 가장 많이 사용되는 라이브러리로 여기에서 최근 알게된 팁을 하나 정리해 본다. 아마 가장 많이 사용하는 기본적인 코드 방식은 다음과 같을 것이다. import boto3 client = boto3.client('s3') my_bucket = s3.Bucket('bucket_name') for file in my_bucket.objects.all(): print(file.key) 위 코드를 통해 기본적으로 쿼리를 진행하면 한번에 최대 1000개의 데이터만 가져올 수 있다. 하지만 기업에서 사용하는 데이터를 보통 더 많은 데이터를 보관하고 있기 때문에 1000개의 제한을 해결할 수 있는 방식을 추가로 제공하는데, ListObjectV2를 .. 2021. 8. 19.
Splunk Phantom REST API 기본 사용 최근 Splunk를 사용하는 회사가 늘고 있다. 여기에 Splunk회사에서 인수한 Phantom이라는 SOAR(Security Orchestration, Automation, and Response) 솔류션이 있는데, 사용법이 초반에 익숙해 지는데 시간이 좀 필요하다. 기본적인 개념은 Container라는 것이 하나의 인스턴스이고 여기에 Artifact(인스턴스 관련증적)을 넣은 사전에 만들어 놓은 App등을 통해 조사를 진행하는 방식이 기본 구조라 할 수 있다. 여기에 최근 필자가 REST API를 사용할 일이 있어 여기에 정리해 본다. 기본적으로는 https://docs.splunk.com/Documentation/Phantom/4.10.4/PlatformAPI/Using 에 어떻게 활용할 수 있는지.. 2021. 8. 19.
Microsoft 365 Defender Ninja August 2021 special edition 공개 지난 몇 개월 동안 Microsoft는 Microsoft Defender 제품과 Microsoft Cloud App Security 전반에 걸쳐 중대한 제품 발표를 했는데 해당 내용을 아래에 정리되어 있다. 아래 리소스를 통해 속도를 높일 수 있으며 마지막에 지식 확인을 통해 학습 내용을 확인할 수 있다. 또한 Ninja 여름 또는 겨울 특별판 재미 인증서를 요청이 가능하니, Ninja 인증서 컬렉션을 만들어보아도 좋겠다. https://techcommunity.microsoft.com/t5/microsoft-365-defender/microsoft-365-defender-ninja-august-2021-special-edition/ba-p/2643022 Microsoft 365 Defender Ninj.. 2021. 8. 18.