-
9012번 괄호 풀이Programming/[BAEKJOON] acmicpc 2018. 1. 20. 16:35
[문제] https://www.acmicpc.net/problem/9012 문제가 읽어보면 굉장히 간단합니다.[입력/출력] 처음 이 문제를 접했을때 간단하게 생각을 했습니다. '(' 가 입력될때 + 해주고 ')' 입력되면 - 해주면 마지막에 결국 '(' 개수와 ')' 개수가 동일한 결과만( ex) if(count == 0) ) YES를 출력하게 하면 되겠구나~ 그렇게 작성한 소스코드가 trouble에 있습니다.. http://hackstoryadmin.tistory.com/40?category=270793 여기 들어가보면 동일한 알고리즘으로 작성한 소스코드를 보실 수 있습니다.(삽질의 흔적) 하지만 한가지 생각을 못했던 것이 있습니다. 바로 이런 결과입니다. )( -> 즉 괄호가 닫히지 않아서 문제에서 ..
-
2941번 크로아티아 알파벳 풀이Programming/[BAEKJOON] acmicpc 2018. 1. 17. 04:25
[문제] https://www.acmicpc.net/problem/2941 크로아티아 알파벳을 문장에서 찾아서 count++ 해주면 된다. 또 예를 드는 부분에 크로아티아 알파벳을 제외한 알파벳도 개수를 더하는것을 볼 수 있는데 왜그러는지는 모르겠지만 크로아티아 알파벳을 제외한 알파벳 또한 count++ 하고 마지막에 출력해주면 된다. [풀이] #include int main(){char arr[100];int i,len,count = 0;scanf("%s",arr);i = 0;while(arr[i]) //문장의 길이를 알기위함.{i++;}len = i;for(i = 0; i < len; i++) //문장에서 크로아티아 알파벳을 찾기 위함.{if(arr[i] == 'c' && (arr[i+1] == '=..
-
10828번 스택 풀이Programming/[BAEKJOON] acmicpc 2018. 1. 13. 18:18
[문제] https://www.acmicpc.net/problem/10828 [입력/출력] [ex] 시스템을 공부하면서 스택에 대한 공부를 했던 기억이있는데 직접 스택을 구현하면서 스택 구조에 대해 상기 시키는 기회가 되었습니다. strcmp함수를 적절히 사용하여 입력한 문자열에 따라 다르게 동작하도록 코딩하였습니다. [풀이] #include #include int main(){int input,i,j,count = 0;scanf("%d",&input);char opcode[input][5];int operand[input];for(i = 0; i < input; i++){scanf("%s",&opcode[i]);if(!strcmp(opcode[i],"push")) // 입력한 문자열이 push일때 op..
-
[겨울 방학] 세미나 발표자료SCP(club)/seminar 2018. 1. 11. 16:14
동아리 S.C.P 에서는 각자 공부한 내용을 발표하는 세미나를 주 2회 진행합니다.
-
1100번 하얀 칸 풀이Programming/[BAEKJOON] acmicpc 2018. 1. 9. 13:25
[문제] URL : https://www.acmicpc.net/problem/1010 [입력/출력] 이렇게 8*8 총 64개 칸을 가진 체스판에서 말이 있다면 F 없다면 . 문자를 입력한다. 뭐.. 2진수라고 생각을 하면 될듯.... 그렇게 2진수로 생각을 해서 나타내보면 체스판은 이렇게 표현이 가능하다. 0) 0 1 0 1 0 1 0 11) 1 0 1 0 1 0 1 02) 0 1 0 1 0 1 0 13) 1 0 1 0 1 0 1 04) 0 1 0 1 0 1 0 15) 1 0 1 0 1 0 1 06) 0 1 0 1 0 1 0 17) 1 0 1 0 1 0 1 0 [풀이] #include int main(){char arr[8][8]; // 2차원 배열 선언 -> 8 * 8int count = 0,i,j; ..
-
PicoCTF 2017 LEVEL 1 [WEB EXPLOITATION] What Is Web 풀이CTF Write-Up 2018. 1. 7. 19:36
PicoCTF 라는 제 수준에 맞는 ctf가 있더군요. PicoCTF란? https://picoctf.com/about 위 URL 에서 PicoCTF에 대한 정보를 확인 할 수 있습니다. 동아리원들과 함께 CTF를 풀어봤는데요. 저는 What Is Web이라는 문제를 풀어봤습니다. 문제가 다 영어라.. 저는 파파고를 통해 번역을 돌려보았고 이 문제에 대한 내용을 이해할 수 있었습니다. 파란색부분에 링크가 걸려있어 확인을 해보니 some guy는 world wide web의 창시자인 팀 버너스리에 대한 내용이였고website를 눌러보니 새창을 통해 어떤 웹사이트로 들어가게 되었습니다. 별것없이 고양이 한마리 사진과 Click me to say hello! 버튼이 있더군요. 눌러보니.. 이런 메시지만 전달하..
-
level 19. 풀이System hacking training/Hackerschool F.T.Z 2018. 1. 6. 20:52
all clear 까지 얼마 안남았네용 ㅎ 풀이 시작합니다. 로그인 후 힌트파일을 열어보면 이와 같은 소스코드가 출력됩니다. 기존 문제와 다른 부분은 setreuid()함수가 없는것입니다. 하지만 ls -al attackme 로 attackme의 권한을 확인해 보면 이렇게 setuid가 걸려있는것을 확인 할 수 있습니다. 또한 gets()함수에서 문자열의 길이를 지정하지 않는점을 이용하여 bof 공격을 할 수 있습니다. 스택구조를 확인하기 위해 gdb로 disassemble 해보면 힌트파일의 소스코드와는 다른 40을 할당한것을 알 수 있습니다. dummy 값이 20이 들어간것이죠. 이제 공격 시나리오를 생각해보면 의미 없는 값을 40바이트로 dummy와 버퍼를 덮어고, SFP 를 4바이트로 덮고, 마지막..