본문 바로가기

분류 전체보기50

컴알못의 사이트 정보 수집 웹 해킹 책을 샀는데 적을 알아야 전쟁에서 승리할 수 있다고 합니다. 즉, 상대의 정보를 파악하는게 해킹의 첫걸음이랍니다. 정보를 수집하는 방법은 다양하지만 우선 whois를 사용하는 방법이 있습니다. 웹사이트들은 도메인을 등록할 때 정보를 제공해야하는데 그 정보를 열람할 수 있는게 바로 whois입니다. pip install pyhton-whois 파이썬 모듈도 있으니 설치해서 사용가능합니다. import whois information = whois.whois(url or ip) 사용 방법도 비교적 간단합니다. whois 함수에 url 혹은 ip 같이 탐색가능한 정보를 넘겨주면 정보를 조회할 수 있습니다. 그리고 정보 수집을 위해서 스캐너를 구현해볼 수도 있습니다. 제가 말하는 스캐너가 하는 역할은 .. 2022. 1. 3.
React로 카페 만들기 프로젝트 (3) 서론 이번 프로젝트의 핵심은 뭐니뭐니해도 Typescript라고 생각한다. 깃허브를 뒤지면서 다른 사람의 Typescript 코드를 본적이 있는데 확실히 Javascript랑은 확연히 달랐다. 근본적인건 똑같지만 좀 더 모듈화에 초점을 맞춘 느낌이 들었다고 해야하나? 들어오는 값의 타입과 나가는 값의 타입을 명시하는 것 때문에 정말 함수가 하나의 출입관리국처럼 보였기 때문일지도 모르겠다. 내가 지난번에 Typescript로 카카오톡 클론을 만들었지만 솔직히 그건 상당히 죽쑨 코드가 됐다고 생각하고.. 그걸 반성해서 이번에는 Typescript의 Interface 기능을 좀 더 잘 살려보겠다는 마음가짐으로 개발에 임했다. Interface란 Typescript에서 타입 체크를 위해 사용되는 기능이다. "자.. 2021. 10. 30.
프로그래머스 위클리 체인지 6주차 - 복서 정렬하기 풀이 언어 : PYTHON def solution(weights, head2head): answer = [] newInforms = [] for i, log in enumerate(head2head) : # 전체 이긴 횟수 win = 0 # 전체 진 횟수 lose = 0 # 나보다 무거운 선수를 이긴 횟수 heavy_win = 0 for j, l in enumerate(log) : if l == "W" : if weights[i] 0 : rate = win/(win+lose)*100 else : rate = 0 newIn.. 2021. 10. 8.
프로그래머스 위클리 체인지 5주차 - 모음사전 풀이 언어 : PYTHON def solution(word): global alphabet global dictionary alphabet = ["A", "E", "I", "O", "U"] dictionary = [] for a in alphabet : DFS(a) return dictionary.index(word)+1 def DFS(s) : if len(s)>5 : return dictionary.append(s) for char in alphabet : DFS(s + char) 이번 문제는 출제자의 의도가 명확하게 보여서 좋았다. 어느모로 보나 이건 깊은 탐색을 사용하여 풀라고 만들어진 문제 같다. A부터 시작해 DFS 탐색으로 알파벳을 하나씩 추가해주면서 단어의 길이가 5를 넘을 때 탐색을 종료시.. 2021. 10. 8.