python_MakesolvedAcBot
Solved ac slack bot 만들기하루에 한 번 내가 그 날 푼 문제들을 알려주는 봇
내가 푼 문제들을 저장한 후 다음 날과 비교하여 달라졌으면 출력
서버에서 푼 문제들을 받아와서 가공할 것
문제 정보
번호
이름
문제 정보를 받아와서 dictionary에 저장 * key : 문제 번호 * value : 문제 이름
데이터mazassumnida 분석What is github action
github 자체 CI/CD 플랫폼
Package Registry 저장소
소스코드를 빌드하고 난 artifact들을 저장하고 관리 배포함
사용 신청을 해야함
리눅스, macOs, 윈도우 플랫 폼 제공
병렬로 워크플로우 실행 가능(MATRIX)
WorkFlow자동화된 전체 프로세스를 나타낸 순서도workflow file을 전달하면 github actions가 실행
Job여러 step을 그룹 지어주는 역할, 단일한 가상환경 제공각 잡끼리 서로 다른 가상 환경 부 ...
Metasploit 기초 및 실습
Metasploit이란?Metasploit framework는 ruby 기반 모듈 침투 테스트 플랫폼이다. 2003년 Perl 베이스의 포터블 네트워크 도구로 개발됐다. 인터프리터 언어 기반 포터블 네트워크 프레임워크를 목표로 한 점에서 무어로서는 유연한 시스템 유지 보수 및 침투 테스트가 목적이었음을 알 수 있다.
기본적으로 MetaSploit framework는 침투 테스트 및 익스플로잇 개발을 위한 준비된 테스트 환경에서 사용하는 도구이다. MetaSploit 이전에 시스템 테스트 상황에서는 시스템(프레임 워크)이 지원하는지 안 하는지 모를 다양한 도구로 직접 코드 작성 후 네트워크에 수동으로 모든 상황을 수행해야 했다. 하지만 Metasploit의 등장과 함께 이 문제들은 해결되었다.
특히 MetaSploit은 오픈 소스이기 때문에 쉽게 커스텀 될 수 있는데 이 때문에 2007년 루비 버전 MetaSploit 3.0 공개와 함께 보안 커뮤니티에서 주목받았고 오퍼레이팅 시스템으 ...
칼리 리눅스 설치 및 초기 세팅
Setting실습 환경
Window 10
Kali-2018.2 version
RAM : 8GB
HardDisk : 80GB
VM Wokrstation Pro
시작 전 이건 알고 가자Kali-linux란 무엇인가[^1]: 데비안은 free OS,안정성과 보안 중점 OS[^2]: 12학번 선배에게 들으니 본인은 백트랙으로 실습했다 하더라
데비안 계열 Linux[^1]
모의 해킹 툴
OS를 설치하면 해킹 툴들과 사용법이 나와있음
공식 홈페이지에서 무료로 다운로드 가능
백트랙의 후속 버전[^2]
설치 과정 중 에러~ can be run after disabling Device/Creditial Guard Error
일종의 방화벽이 걸려있어서 생기는 에러이다. 나같은 경우 VM Workstation을 사용하는데 윈도우 자체에서 지원하는 VM 매니저가 이미 설치되어 있어서 오류가 뜨는거라 추측한다
[^3]: 하이퍼 바이저는 윈도우 VM 매니저이다.
해결법
가상화 보안 해 ...
칼리 리눅스 오류 해결
ifconfig 실행 안되는 오류 해결 방법
실습을 진행 중 IP를 확인하려 했는데 ifconfig를 쳤더니 커맨드를 찾을 수 없다고 나왔다. 그래서 내가 착각했나..? 싶어 ipcofnig까지 쳤는데 역시나 찾을 수 없다고 나온다
해결 방법1root@kali:/home/kali# ip a
위의 커맨드를 입력하면 IP를 확인할 수 있다 데이반 9 버전부터 ifconfig 커맨드가 실행되지 않는다고 한다.
command not found 오류가끔 기본 커맨드임에도 불구하고 커맨드가 입력이 되지 않는 경우가 있다. command not found라고 쉘에 출력이되는데 이를 해결해보자
해결 방법리눅스에서 커맨드를 실행 시키는 방법은 alias처럼 일종의 단축키를 저장해두고 불러오는 방식이다. command not found는 이 저장된 단축키를 불러오는 중 경로가 잘못된 경우 발생한다.
이제 문제를 해결해보자 vim이던 vi 던 편집기로 .bash_profile을 연 후 아래 경로로 ...
리눅스 쉘 스크립트 익히기 -1
Hacker Rank로 쉘 스크립트를 배우다알고리즘 연습용 사이트를 찾다가, 영어이긴 하지만 해커랭크에서는 문제를 많이 풀면 배찌? 등급도 나눠준다길래 동기부여에 좋을거 같아 시작했다.
막상 시작하니 해커랭크에서 알고리즘을 비롯한 SQL, Shell 등 챌린지도 있길래, 마침 쉘스크립팅 능력의 필요성을 느끼고 있어 시작하게 되었다.
Linux Shell with Hacker RankLet’s Echo1# echo "HELLO"
명령어 echo는 출력 명령어이다.
Looping and Skipping1234for var in {1..99..2}do echo $vardone
변수를 사용할 때는 변수 앞에 $를 붙여야 인식한다
A Personalized Echo12read nameecho Welcome $name
read는 입력 값을 받는 명령어이다
read [var]
The World of Numbers1234567read var ...
입양 시간 구하기 - 프로그래머스 SQL 고득점 KIT
입양 시간 구하기입양 시간 구하기 -1문제는 간단한데 함수를 몰라서 좀 헤맸다.
보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다.
풀이
HOUR(각 시간대), COUNT(입양 건 수)를 출력하라
결과는 시간대 순으로 정렬하라
1SELECT HOUR(DATETIME) AS HOUR, COUNT(HOUR(DATETIME)) AS COUNT FROM ANIMAL_OUTS GROUP BY HOUR(DATETIME) HAVING HOUR>=9 AND HOUR <= 19 ORDER BY HOUR(DATETIME) ASC
시간 함수인 HOUR을 이용하면 시간대 별 속성을 만들 수 있다
입양 시간 구하기 -2정보처리 기사에서 보지 못한 개념들이 나와 새로 배웠다
보호소에서는 몇 시에 입양이 가장 활발하게 일어나 ...
없어진 기록 찾기 - 프로그래머스 SQL 고득점 KIT
없어진 기록 찾기ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다. ANIMAL_OUTS 테이블의 ANIMAL_ID는 ANIMAL_INS의 ANIMAL_ID의 외래 키입니다.
천재지변으로 인해 일부 데이터가 유실되었습니다. 입양을 간 ...
중성화 여부 파악하기 - 프로그래머스 SQL 고득점 KIT
중성화 여부 파악하기문제ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
보호소의 동물이 중성화되었는지 아닌지 파악하려 합니다. 중성화된 동물은 SEX_UPON_INTAKE 컬럼에 ‘Neutered’ 또는 ‘Spayed’라는 단어가 들어있습니다. 동물의 아이디와 이름, 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 중성화가 되어있다면 ‘O’, 아니라면 ‘X’라고 표시해주세요.
풀이1SELECT ANIMAL_ID,NAME,CASE WHEN(SEX_UPON_INTAKE LIKE '%NEUTERED%' OR SEX_UPON ...
NULL 처리하기 - 프로그래머스 SQL 고득점 KIT
NULL 처리하기입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 “No name”으로 표시해 주세요.
위 문제의 핵심은 NULL 값일 때 속성 NAME의 NULL을 “No name”으로 바꾸는 것이다.
풀이1SELECT ANIMAL_TYPE,IFNULL(NAME,'No name'),SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID
MYSQL에서는 IFNULL(속성,’치환 값’) 형식으로 NULL 값일 때 값을 치환 할 수 있다.
프로그래머스 고득점 KIT 중복 제거하기
프로그래머스 고득점 KIT 중복 제거하기문제동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다.
풀이1SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS WHERE NAME IS NOT NULL
DISTINCT를 사용하면 오류가 떠서 뭔가 했는데, COUNT() 내에 사용해야했었다.