전체 글 22

DVWA 실습 (Brute Force)

방문자의 통계를 보니 정보보안 포스팅을 많이 보는 것같았다. (하나만 올리기도 했고 별 내용이 없어서 너무 죄송했습니다...ㅠㅠ) KISIA 에서 교육받은 내용을 노션에 정리해놓았었는데, 블로그에도 올리면 좋을 것같아 포스팅해본다. (내용이 다소 틀릴 수도 있습니다..) !당연한 얘기지만 해당 포스팅의 내용을 악용해서는 안됩니다! Brute Force 사용자 패스워드를 알아내기 위한 공격 - dictionary 공격 - 가장 많이 사용하는 비밀번호를 먼저 대입한다. (맞을 확률이 높으니까) 칼리 리눅스를 통해 DVWA에 접속한다. (/opt/lampp/lampp restart 설정을 해야 DVWA에 접속) Brute Force 탭을 클릭하여 문제를 살펴보자. 해당 문제를 풀 때의 상황은 2가지로 나뉠 수..

정보보안 2023.10.19

Kotlin 기본 문법

전공 수업 정리 겸, 잘 쓰질 않다보니 계속 까먹는 코틀린 문법 위주로 정리해보았다. String templates 파이썬의 경우 format 형태를 쓰기도 했는데 코틀린은 $ 하나면 된다. val i = 10 println("i = $i") // i = 10 만약 length와 같은 함수를 써야하는 경우는 ${}를 활용한다. 연산의 경우도 마찬가지 val s = "abc" println("$s.length is ${s.length}") // {}없이 $s.length 로 해버리면 .length라고 문자 그대로 출력하게 됨 println("I have ${numberOfShirts + numberOfPants} items of clothing") Variable 코틀린은 변수의 타입을 한번 선언한 이상,..

앱/Android 2023.10.19

1. 파이썬 기초 - Pythonic code

해당 포스트의 내용 출처는 Naver boostcourse : 인공지능(AI) 기초 다지기 에 있습니다. split & join 코테 준비에서 input값을 다루거나 output 형태를 맞출 때 자주 썼던 함수였던 걸로 기억한다. - split()은 기준에 따라 나누는 것이고 join은 반대로 모두 합치는 것. - 보통 리스트 안의 요소들을 string형태로 통째로 출력하고 싶을 때 많이 썼던 것 같다. join의 예제코드만 간단하게 쓰고 넘어가도록 한다. colors = ['red', 'blue', 'green', 'yellow'] result = ''.join(colors) # 'redbluegreenyellow' result = '-'.join(colors) # 연결 시 "-"으로 연결 # 'red..

1. 파이썬 기초 - Python Data Structure

해당 포스트의 내용 출처는 Naver boostcourse : 인공지능(AI) 기초 다지기 에 있습니다. 원래는 넘어갈까 했지만 내용을 들어보니 코딩테스트도 준비하는 입장에선 필요한 함수들이 많아서 첫 번째 챕터에선 Python Data Structure과 Pythonic Code 강의 내용을 쫙 정리를 해보고자 한다. dictionary - dictionary 의 정보를 알기위해서 items() 메소드를 사용하면 된다. - 혹은 dic_itmes in 딕셔너리.itmers() 하면 하나씩 튜플쌍이 출력이 된다. - dict key만 출력하고 싶으면 keys() 메소드를 사용한다. - value만 출력하고 싶으면 values() 메소드 사용한다. collections - List, tuple, dict에..

파이썬의 소소한 지식 (call by object reference, Typehints, docstring, flak8, black)

Call by Object 파이썬 함수 호출 방식 - Call by Object Reference - 객체의 주소가 함수로 전달되는 방식 - 전달된 객체를 참조하여 변경 시 호출자에게 영향 But 새로운 객체를 만들면 영향을 받진 않음 def a(b): b. append(1) b = [2,3] x = [0] a(x) print(x) # [0,1] Type hints - 사용자에게 인터페이스를 명확히 알 수 있게 해준다. def insert(self, index:int, module: Module) -> None: # index의 타입이 int구나,, return은 없구나 ,, 이렇게 알 수 있음 Docstring - 파이썬 함수에 대한 상세스펙을 사전에 작성 - (''') 형태로 docstring영역 표..

Naming에 대해서

코드를 짤 때 우리는 무심코 아무런 규칙없이 변수나 함수 이름을 설정하는 경우가 있다. 하지만 그런 습관을 가진 채로 다른 개발자들과 협업을 하거나 직장 생활을 하게 되면 욕 먹을 수 있다고 들은 듯 하다.. 1. CamelCase (낙타의 등 모양과 비슷하다해서 CamelCase라고 부른다.) 👉🏻 lowerCamelCase : 합성어에서 첫 번째 단어 이후 두 번째 단어부터 대문자로 적는 방법 👉🏻 UpperCamelCase : 합성어에서 첫 번째 단어부터 모두 대문자로 적는 방법 => PascalCase 라고도 한다. 2. snake_case : 단어 사이에 _ 를 끼워넣는 방법 패키지 helloworld 클래스 HelloWorld 메소드 helloWorld 변수 helloWorld 상수 HELLO..

첫 번째 장고 앱 작성하기, part ② (Django 문서 참고)

* 참고 문서 Django 공식 문서: https://docs.djangoproject.com/ko/3.2/intro/tutorial02/ 첫 번째 장고 앱 작성하기, part 2 | Django 문서 | Django Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate docs.djangoproject.com 점프 투 장고 : https://wikidocs.net/70650 2-02 모델 `[완성 소스]` : [github.com/pahkey/djangobook/tree/2-02](https://github.com/pa..

웹/Django 2021.09.22

첫 번째 장고 앱 작성하기, part ① (Django 문서 참고)

* 참고문서 1. 장고 공식 문서 : https://docs.djangoproject.com/ko/3.2/intro/tutorial01/ 첫 번째 장고 앱 작성하기, part 1 | Django 문서 | Django Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate docs.djangoproject.com 2. 점프 투 장고 : https://wikidocs.net/70649 2-01 URL과 뷰 `[완성 소스]` : [github.com/pahkey/djangobook/tree/2-01](https://github...

웹/Django 2021.09.22

django 시작하기

* 와 를 참고해서 포스팅한 게시물입니다. ※백엔드 공부를 시작하면서 블로그에도 같이 정리를 하면 좋을 것같아 시작하는 포스팅입니다. 오류나 오타 지적 환영합니다 :) | 목차 1. Node.js VS django 2. django 란? 2-1 Django의 정의 2-1-1 프레임워크 vs 라이브러리 3. django 시작하기 3-1 파이썬 설치 3-2 파이썬 가상 환경 만들기 3-3 가상환경에 장고 설치하기 3-4 장고 프로젝트 생성하기 3-5 파이참 설치하고 장고 개발 서버 실행하기 1. Node.js VS django 백엔드(Backend)에 대한 공부를 시작하게 되면, 보통 우리는 Node.js라던지 Django라는 것을 접하게 될 것이다. (백엔드는 서버와 DB를 관리하는 기술을 뜻함) 그래서 ..

웹/Django 2021.09.21