일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 앙버터마카롱
- graphql mutation error
- graphql with reactnative
- 화이트해커를 위한 웹 해킹의 기술
- typescript
- 토라비
- apollo react native
- 홍대 토라비
- 비동기배열
- graphql
- 예쁜술집 예술
- 잠실새내
- 홍대 예술
- 운정 소바동
- promise처리
- useMutation error
- 금별맥주
- 신촌 소문난집
- promise메서드
- 화이트 해커를 위한 웹 해킹의 기술
- graphql 400
- 지보싶 신촌점
- 잠실새내 도그존
- apolloclient
- 홍대 카페 장쌤
- 비동기배열처리방법
- graphql with RN
- graphql react native
- 고르드
- 도그존
- Today
- Total
목록분류 전체보기 (151)
yehey's 공부 노트 \n ο(=•ω<=)ρ⌒☆
크롤링 (crawling) :WEB 상에 존재하는 contents를 수집하는 작업 -프로그래밍으로 자동화가 가능 -HTML 페이지를 가져와 HTML/CSS 등을 파싱, 필요한 데이터를 추출 크롤링 방법 -Open API를 제공하는 서비스에 Open API를 호출해서 받은 데이터 중 필요한 것만 추출하는 기법 -Selenium 등 브라우저를 프로그래밍으로 조작해 필요한 데이터만 추출하는 기법 하이퍼링크 (Hyper link) -다른 문서나 미디어 파일을 연결 -HTML에서는 a 태그에 href (hyper reference) 속성 값을 주는 형식으로 사용 -a 태그를 이용하여 웹 사이트의 URL은 물론, HTML 문서, 워드 프로세서, 압축파일, 실행파일 등을 모든 종류의 파일로 링크시킬 수 있음 from..
웹 스캐너 (WEB scanner) :웹에서 발생하는 수많은 취약점들을 빠르게 진단하기 위한 도구 -취약점 스캐너의 일종 -Acutenetix, OWASP-Zap, w3af, nikto, Burp Suite 등 HTML 파싱 :HTML 소스를 얻어서 원하는 부분(혹은 정보)을 추출하는 기법 -python에서는 beautiful soup4 라는 파이썬 라이브러리를 통해 파싱을 제공한다. Beautiful Soup4 -HTML 및 XML 파일에서 데이터를 가져오기 위한 Python library -cmd->Python-> pip install beautifulsoup4 를 통해 설치 urlopen() html 파일 열기 bsObj.html html 부분만 가져오기 bsObj.html.head html에서 h..
id: wolfman pw: love eyuna /* The Lord of the BOF : The Fellowship of the BOF - darkelf - egghunter + buffer hunter + check length of argv[1] */ #include #include extern char **environ; main(int argc, char *argv[]) { char buffer[40]; int i; if(argc < 2){ printf("argv error\n"); exit(0); } // egghunter for(i=0; environ[i]; i++) memset(environ[i], 0, strlen(environ[i])); if(argv[1][47] != '\xbf') ..
id: orc pw: cantata /* The Lord of the BOF : The Fellowship of the BOF - wolfman - egghunter + buffer hunter */ #include #include extern char **environ; main(int argc, char *argv[]) { char buffer[40]; int i; if(argc < 2){ printf("argv error\n"); exit(0); } // egghunter for(i=0; environ[i]; i++) memset(environ[i], 0, strlen(environ[i])); if(argv[1][47] != '\xbf') { printf("stack is still your fri..
id: goblin pw: hackers proof /* orc code The Lord of the BOF : The Fellowship of the BOF - orc - egghunter */ #include #include extern char **environ; main(int argc, char *argv[]) { char buffer[40]; int i; if(argc < 2){ printf("argv error\n"); exit(0); } // egghunter for(i=0; environ[i]; i++) memset(environ[i], 0, strlen(environ[i])); if(argv[1][47] != '\xbf') { printf("stack is still your frien..
id: cobolt pw: hacking exposed 이전에는 strcpy에 BOF 취약점이 존재해 이를 이용했지만 이번에는 gets함수를 이용해 buffer에 값을 넣고 있다. gets함수 역시 BOF 취약점이 존재하기 때문에 ret의 값을 바꿀 수 있다. 먼저 goblin의 스택구조를 파악하기 위해 디스어셈블해보면 다음과 같다 이를 통해 다음과 같은 스택구조를 그릴 수 있다. 이전 문제에서 사용했던 것과 같은 쉘코드를 사용할 것인데, 20바이트는 쉘코드가 들어가기에 부족해서 이번에도 쉘코드를 환경변수에 등록해 주소 값을 알아낼 것이다. 쉘코드를 알아내는 코드는 다음과 같고 //shell.c code #include int main(){ printf("%p\n",getenv("SHELL2")); re..
id: gremlin pw: hello bof world cobolt의 코드 gate와 비슷하지만 이번에는 buffer가 16바이트로 쉘 코드가 들어가기에는 부족하다. 우리가 사용할 쉘 코드는 25바이트이다. \x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80 따라서 쉘 코드를 한경변수에 등록해 줄 것이다. (gate에서도 환경변수를 사용했지만....ㅎㅎ) 등록하기 전에 cobolt를 디스어셈블해서 스택 구조를 파악해보자 이번에도 gate와 마찬가지로 dummy 값은 존재하지 않는다. 스택구조를 그려보면 다음과 같다. 이제 쉘 코드를 환경변수에 등록해주자 그리고 환경변수 주소를..
데구 시험 끝나고 갔던 대명고기집!! 진짜 싸고 가성비 좋당! 포일에 굽는건 좀 힘들었지만 가격대비 맛은 진짜 있었다. 인당 1.5인분 정도 시키면 적당했다! 참고로 양파같은 채소 안좋아하면 계란찜은 노노... 양파 너무 싫다 진짜....... 그리고 옛날 도시락도 맛있었당! 삼겹살, 목살, 옛날 도시락 ( •̀ ω •́ )✧ 왼쪽이 위숨앞에 카우키? 거기 쌀국수!!! 여기 진짜 개맛있다 국물 진하고 간도 좀 쎈 편이라서 입맛에 잘 맞는당. 그래서 자주가는데 이날은 점심으로 먹었당. 나는 양지차돌쌀국수 (❁´◡`❁) 그리고 오른쪽은 간판없는집(구 팔덕식당)이당! 아직 상호명을 안지어서 가게 이름이 저렇당... 근데 직원분들도 엄청 친절하시고 고기도 진짜 맛있었다. 콩나물 넣어주는 건 진짜 사랑❤ 평일이었..
id: gate pw: gate strcpy의 BOF 취약점을 이용해서 공격을 하자 buffer를 넘치게 해서 ret 값을 쉘코드 시작 주소로 바꿔줄 것이다. 쉘코드를 환경변수에 등록해야하는데, bash 쉘을 띄우는 것 뿐만 아니라 권한 상승까지 포함한 쉘 코드를 등록해주어야 한다. \x31\xc0\xb0\x31\xcd\x80\x89\xc3\x89\xc1\x31\xc0\xb0\x46\xcd\x80\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80\x31\xc0\xb0\x01\xcd\x80 setreuid(geteuid(), getreuid()), exit(0)까지 포함시킨 쉘코..
큐 (Queue) FIFO 구조를 갖는 데이터 저장 방식 큐 ADT 객체: 0개 이상의 요소들로 구성된 선형리스트 (큐의 첫번째 요소를 가리키는 front와 마지막 요소를 가리키는 rear가 있음) 연산: create init is_empty is_full enqueue dequeue peek 배열을 이용한 선형 큐 초기 상태: front = rear= -1 데이터를 enqueue할 때마다 rear는 1씩 증가, 데이터를 dequeue할 때마다 front 1 증가 크기에 제한이 있고, 한번 dequeue한 공간을 재사용하기 어렵다. =>메모리가 낭비된다. 연결리스트를 이용한 선형 큐 필요할 때마다 노드를 생성해서 연결 => 메모리 낭비 방지 dequeue 할 때 메모리 공간을 놓아주어야함 초기 front..