전체 글

·Data Science
csv 파일을 다운로드 받았는데 위와 같이 한글이 이상하게 깨져있는 오류를 자주 마주한다.그래서 기록해두는 간단한 해결 방법! 먼저 오류가 발생하는 csv 파일에서 마우스 우클릭 > 메모장에서 편집 클릭  그러면 이렇게 제대로 한글이 나오는 모습을 볼 수 있는데,여기서 위에 메뉴 중 가장 왼쪽의 [파일] > [다른 이름으로 저장] 클릭   인코딩 방식을 UTF-8 에서 UTF-8(BOM) 으로 변경 후 저장이미 존재하여 덮어씌우겠냐고 물어보는데, [예] 클릭  다시 들어가보면 이렇게 오류가 해결된 것을 볼 수 있다!
·Python
처음에 문제 설명만 읽고 바로 이해하기엔 조금 시간이 걸렸던 문제인데,스택을 어떤 용도로, 몇 개를 생성하여 적절하게 활용하는 지가 중요했던 것 같다.  예시를 통해 이해하는 것이 가장 빠르므로, 첫 번째 예시로 설명해보겠다. 첫 번째 줄에는 이후 입력될 정수들의 수인 N이 입력되고 두 번째줄부터 숫자 입력이 시작된다. 4 // [1, 2, 3, 4]3 // [1, 2, 3]6 // [1, 2, 5, 6]8 // [1, 2, 5, 7, 8] 스택에 push하는 순서는 오름차순이며, 처음에 4를 입력 받았으니 1부터 4까지 차례로 먼저 스택에 삽입한다.stack : [1, 2, 3, 4]operator : [+, +, +, +]이후 입력된 수열 4을 만들수 있으므로 4를 출력하기 위해 pop(-)을 한다...
·Python
N = int(input())lst = []for i in range(N): num = int(input()) if num == 0: lst.pop() else: lst.append(num)print(sum(lst)) 매우 쉬운 문제.첫 번째 줄에 입력받은 숫자의 횟수 만큼 두 번째 줄부터 입력 받은 숫자들이 리스트에 저장되도록 하였다.그 후 N번만큼 반복되는 for문에서 숫자 num을 입력받고,num이 0이면 가장 마지막에 저장된 숫자를 지워야 하므로 스택에서 pop(),num이 0이 아니면 num을 스택에 저장해준다.마지막으로 sum() 함수로 리스트의 합계를 출력해주면 끝!
·Web Hacking
This lab contains a DOM-clobbering vulnerability. The comment functionality allows "safe" HTML. To solve this lab, construct an HTML injection that clobbers a variable and uses XSS to call the alert() function.  현재 해당 블로그의 댓글 기능은 "안전한" HTML 을 허용한다는 것을 보니, 아마 댓글창에 익스 코드를 삽입하는 문제인 것 같다. 변수를 clobber하여 XSS로 alert() 함수를 호출하는 DOM clobbering 문제이다. 저번 문제와 달리 practitioner가 아니라 expert 문제라서 훨씬 어려웠는데, 구글링 해..
·Web Hacking
This lab demonstrates a DOM-based redirection vulnerability that is triggered by web messaging. To solve this lab, construct an HTML page on the exploit server that exploits this vulnerability and calls the print() function.  web messaging에 의해 발현되는 DOM 취약점을 보여주는 문제이다.해당 취약점을 활용해서 print() 함수를 호출하는 HTML 페이지를 익스플로잇 서버에 올리라고 한다.   먼저 문제의 블로그 사이트를 탐색해보자. 더보기 ..
·Python
이 문제에서도 좌측 상단에 시간 제한 2초가 눈에 띤다.앞서 배웠던 sys 모듈로 한꺼번에 N+M개의 줄을 입력 받은 후에 for 문으로 처리해야 할 것이다.  첫 번째 코드import sysinput = sys.stdin.readword = input().splitlines()N, M = map(int, word[0].split())S = word[1:N+1]mlst = word[N+1 : N+1+M]num = 0for i in range(M): temp = mlst[i] for j in range(M): if S[j] in temp : num+=1print(num)이건 시도했었던 첫 번째 코드인데, 아래 for문에서 indexerror로 실패했던 코드이다. ..