susujin의 기술 블로그
close
프로필 배경
프로필 로고

susujin의 기술 블로그

  • 분류 전체보기 (260)
    • 정보보안 (51)
      • 뉴스 스크랩 (44)
      • 보안지식 (7)
    • Python (17)
      • Python 기초 (7)
      • Python 활용 (8)
      • 알고리즘 문제풀이 (2)
    • Secure Coding (55)
      • 시큐어코딩 가이드 (46)
      • 실습환경 구축(Django) (6)
      • 실습환경 구축(Kali Linux) (3)
    • 시스템 보안 및 실무 (43)
      • 시스템·네트워크 보안 (21)
      • 시스템 운영·구축 실무 (22)
    • 보안 취약점 진단 및 대응 (69)
      • 취약점 (16)
      • Port Swigger:Lab (19)
      • WebGoat (16)
      • Bee-Box (7)
      • openeg (11)
    • 모의해킹 (8)
    • Cloud (2)
    • SK쉴더스 루키즈 (6)
      • 후기 (6)
    • 프로젝트 (9)
      • AndroidStudio (0)
      • App Inventor (8)
      • PHP (1)
  • 글쓰기
  • 관리자
  • 깃허브
Django 웹페이지 실행하기

Django 웹페이지 실행하기

뷰와 템플릿 작성 뷰 작성 앱(hello) 디렉토리 안에 views.py 파일을 열어 다음 코드를 입력해줍니다. render() 함수는 template을 띄우는 역할을 합니다. #hello/views.py from django.shortcuts import render # Create your views here. def index(request): name = request.GET.get("name") or "no name" return render(request, 'hello.html', {'name': name}) 앱(secure) 디렉토리 안에 views.py 파일에는 다음 코드를 입력해줍니다. #secure/views.py from django.http import HttpResponse # C..

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 6.
  • textsms
Django 모델 생성 및 migrate

Django 모델 생성 및 migrate

모델 생성 이전에 생성해 둔 앱(hello)에서 models.py 파일을 열어줍니다. 해당 파일에 다음과 같은 코드를 작성해줍니다. from django.db import models # Create your models here. class User(models.Model): name = models.CharField(max_length=10, null=False) age = models.IntegerField(null=False) def __str__(self): return f'name={self.name}' 마이그레이션 하단 터미널에 python manage.py makemigrations를 입력후 실행합니다. 이어 DB반영을 위해 python manage.py migrate를 입력합니다. 서버를..

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 6.
  • textsms
Django superuser 생성하기

Django superuser 생성하기

superuser 생성 django 관리자(admin)를 사용하기 위해 superuser를 생성해야합니다. 하단 터미널에 pyhon manage.py createsuperuser를 입력하고 사용자이름, 이메일주소, Password를 2번 입력합니다. admin / admin@admin.com / #1234 이후 서버를 실행하고 http://127.0.0.1:8000/admin/으로 이동하여 로그인을 합니다. superuser로 로그인을 성공했습니다.

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 4.
  • textsms
Django 마이그레이션

Django 마이그레이션

프로젝트를 생성 후 서버를 실행하면 다음과 같이 18개의 마이그레이션이 있다는 메시지가 뜹니다. 마이그레이션 마이그레이션은 DB의 변경사항을 알려주는 것을 의미합니다. makemigrations : 모델 정의에서 데이터베이스 변경지침을 생성 migrate : migrations명령에 의해 생성된 마이그레이션을 적용 장고는 프로젝트를 생성하면 기본적인 테이블을 미리 생성해두기 때문에 마이그레이션이 존재합니다. 따라서 하단 터미널에 python manage.py migrate 를 입력해줍니다. 오른쪽에서 DB를 확인해볼 수 있습니다. DB아이콘을 클릭 후 +를 누른 후 [Import Data Sources...]을 클릭합니다. 파일위치를 확인하고 아래 다운로드를 클릭 후 OK를 눌러줍니다. 오른쪽에서 DB를..

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 4.
  • textsms
Pycharm에서 Django로 앱 생성하기

Pycharm에서 Django로 앱 생성하기

앱 생성 하단 터미널에 django-admin startapp 앱이름을 입력합니다. 왼쪽에 hello라는 설정한 앱이름으로 폴더가 생성됩니다. 이어서 djangoProject(프로젝트이름) 안에 settings.py를 열고 hello.apps,HelloConfig를 입력합니다.

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 4.
  • textsms
Pycharm에서 Django 프로젝트 생성

Pycharm에서 Django 프로젝트 생성

프로젝트 생성 Pycharm 실행 후 [New Project]를 클릭하여 새 프로젝트를 생성합니다. [Create]를 클릭하면 다음과 같이 프로젝트가 만들어집니다. 하단 터미널 창에 Python manage.py runserver를 입력합니다. 다음과 같이 서버가 실행됩니다. 서버 주소를 클릭하면 다음과 같은 창이 뜹니다. 프로젝트 생성이 끝났습니다!

  • format_list_bulleted Secure Coding/실습환경 구축(Django)
  • · 2023. 11. 4.
  • textsms
[시큐어코딩 가이드] 2-2-16. 반복된 인증시도 제한 기능 부재

[시큐어코딩 가이드] 2-2-16. 반복된 인증시도 제한 기능 부재

반복된 인증시도 제한 기능 부재 정의 일정 시간 내에 여러 번의 인증 시도 시 계정 잠금 또는 추가 인증 방법 등의 충분한 조치가 수행되지 않는 경우, 공격자는 성공할 법한 계정과 패스워드들을 사전으로 만들고 무차별 대입하여 로그인 성공 및 권한 획득이 가능하다. 안전한 코딩기법 최대 인증시도 횟수를 적절한 횟수로 제한하고 설정된 인증 실패 횟수를 초과할 경우 계정을 잠금하거나 추가적인 인증 과정을 거쳐서 시스템에 접근이 가능하도록 한다. 코드예제 다음은 안전하지 않은 코드예제로, 사용자 로그인 시도에 대한 횟수를 제한하지 않는 코드입니다. 로그인 페이지 {% csrf_token %} 아이디: 패스워드: {{ msg }} #반복된 인증시도 제한 기능 부재(안전X) def get_user_pw(user_i..

  • format_list_bulleted Secure Coding/시큐어코딩 가이드
  • · 2023. 11. 4.
  • textsms
[시큐어코딩 가이드] 2-2-15. 무결성 검사없는 코드 다운로드

[시큐어코딩 가이드] 2-2-15. 무결성 검사없는 코드 다운로드

무결성 검사없는 코드 다운로드 정의 원격지에 위치한 소스코드 또는 실행 파일을 무결성 검사 없이 다운로드 후 이를 실행하는 프로그램이 존재한다. 이러한 프로그램은 호스트 서버의 변조, DNS 스푸핑(Spoofing), 전송 시의 코드 변조 등의 방법을 이용해 공격자가 악의적인 코드를 실행하는 위협에 취약하게 된다. 파일 무결성을 확인하는 두 가지 주요 방법으로는 암호화 해시 및 디지털 서명이 있다. 안전한 코딩기법 DNS 스푸핑(Spoofing)을 방어할 수 있는 DNS lookup을 수행하고 코드 전송 시 신뢰할 수 있는 암호 기법을 이용해 코드를 암호화 다운로드한 코드는 작업 수행을 위해 필요한 최소한의 권한으로 실행 소스코드는 신뢰할 수 있는 사이트에서만 다운로드해야 하고 파일의 인증서 또는 해시값..

  • format_list_bulleted Secure Coding/시큐어코딩 가이드
  • · 2023. 11. 4.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • navigate_next
전체 카테고리
  • 분류 전체보기 (260)
    • 정보보안 (51)
      • 뉴스 스크랩 (44)
      • 보안지식 (7)
    • Python (17)
      • Python 기초 (7)
      • Python 활용 (8)
      • 알고리즘 문제풀이 (2)
    • Secure Coding (55)
      • 시큐어코딩 가이드 (46)
      • 실습환경 구축(Django) (6)
      • 실습환경 구축(Kali Linux) (3)
    • 시스템 보안 및 실무 (43)
      • 시스템·네트워크 보안 (21)
      • 시스템 운영·구축 실무 (22)
    • 보안 취약점 진단 및 대응 (69)
      • 취약점 (16)
      • Port Swigger:Lab (19)
      • WebGoat (16)
      • Bee-Box (7)
      • openeg (11)
    • 모의해킹 (8)
    • Cloud (2)
    • SK쉴더스 루키즈 (6)
      • 후기 (6)
    • 프로젝트 (9)
      • AndroidStudio (0)
      • App Inventor (8)
      • PHP (1)
최근 글
인기 글
태그
  • #보안기능
  • #입력데이터 검증 및 표현
  • #파이썬
  • #burp suite
  • #Port Swigger
  • #취약점진단
  • #XSS
  • #WebGoat
  • #openeg
  • #sql injection
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바