SQL

프롤로그 Stored Procedure 스토어드 프로시저...이름 길다 스토어드 프로시저 스토어드 프로시저란 MySQL에서 제공해주는 프로그래밍 기능을 말한다. 즉 SQL 문을 하나로 묶어서 편리하게 사용하는 기능이다. 실무에서 SQL문(주로 SELECT)을 매번 하나하나 수행하기 보다는 스토어드 프로시저로 만들어 놓은 후에 스토어드 프로시저를 호출하는 방식을 많이 사용한다. 실습 매번 회원 테이블 "당탕이"의 정보와 제품 테이블의 " 냉장고"의 정보를 동시에 조회한다고 가정하자 shopdb인지 확인하자 매번 조회를 해야한다면 SELECT * FROM memberTBL WHERE memberName = "당탕이"; SELECT * FROM productTBL WHERE productNAME = "냉장고"..
프롤로그 데이터 베이스 안에 테이블만 표현하고 저번 글 2024.01.17 - [데이터베이스] - [데이터베이스] 데이터베이스 구축 절차 #3 [데이터베이스] 데이터베이스 구축 절차 #3 프롤로그 아 할 거 너무 많은데....큰일났다;; 정보 시스템 구축 절차 분석->설계->구현->시험->유지보수 분석 : 구현하고자 하는 프로젝트의 가장 첫 단계. 시스템 분석 또는 요구사항 분석. "what" taesan-smj.tistory.com 에서도 테이블 생성하고 데이터를 넣는 과정을 배웠다. 이게 기본적이고 중요하긴 하지만 테이블만 가지고 실무에서 데이터베이스를 운영하지 않는다. 다른 데이터베이스 개체로는 인덱스, 스토어드 프로시저, 트리거, 함수, 트리거 커서 등이 있지만 이번엔 인덱스만 알아보자. 인덱스 ..
프롤로그 아 할 거 너무 많은데....큰일났다;; 정보 시스템 구축 절차 분석->설계->구현->시험->유지보수 분석 : 구현하고자 하는 프로젝트의 가장 첫 단계. 시스템 분석 또는 요구사항 분석. "what" 즉 무엇을 할 것인가 결정 설계 : 우리가 구축하고자 하는 시스템을 "How" 즉 어떻게 할 것인가 결정 나머지는 알아서 프로그래머가 다 한다. 그래서 분석 설계가 끝나면 50% 이상이 끝난다. 데이터베이스 모델링과 필수 용어 -데이터베이스 모델링 : 분석과 설계 과정 중에서 가장 중요한 과정. 현실세계에서 사용되는 데이터를 MySQL에 어떻게 옮겨 놓을 것인가 결정하는 과정. 정보들을 단편적으로 저장하는 것이 아니라 테이블이라는 형식에 맞춰서 넣어야한다. -데이터 : 단편적인 정보. 정보는 있으나..
문제 https://dreamhack.io/wargame/challenges/24/ simple_sqli 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. Reference Server-side Basic dreamhack.io 문제코드 #!/usr/bin/python3 from flask import Flask, request, render_template, g import sqlite3 import os import binascii app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open('./flag.txt', 'r').read() except:..
프롤로그 제목에서부터 SQL Injection 나온다. 인터넷 뒤져봤는데, 각 고객 정보 유출....핸드폰번호 등의 고객정보 유출 등이 있을 때 SQL 인젝션 공격흔적이란 단어가 나온다. 사용자가 입력값에 필터링이 제대로 적용돼 있지 않을 때 발생한다고 되어 있는데, 공겨자가 조작된 SQL 질의문을 삽입해 웹 서버 DB정보를 열람하고 정보를 유출, 조작한다라고 되어 있다. 그러니까 SQL을 좀 알아야할 것 같다. 근데 내가 아는 건 Create table, update table 이거 딱 2개만 해봤는데 큰일났다. 서론 Injection(인젝션) : 주입, 이용자의 입력값이 어플리케이션의 처리과정에서 구조나 문법적인 데이터로 해석되어 발생하는 취약점 SQL Injection SQL : DBMS에 데이터를..
성밍쟁
'SQL' 태그의 글 목록