목록Web/web dev (25)
hy30nq's blog

안녕하세요! 오늘은 SOAP 서비스에 대해 이야기해볼게요. 🧼SOAP 서비스란?SOAP는 Simple Object Access Protocol의 약자예요. 웹 서비스 간에 메시지를 교환할 때 사용되는 프로토콜이랍니다. XML 형식을 사용해서 데이터를 주고받아요. 이로 인해 다양한 플랫폼과 언어에서 호환이 잘 돼요.SOAP 서비스의 장점플랫폼 독립성SOAP는 XML을 사용하기 때문에 다양한 운영 체제와 프로그래밍 언어에서 사용할 수 있어요. 윈도우, 리눅스, 맥 등 어떤 환경에서도 문제없답니다.보안성WS-Security 같은 표준을 통해 높은 수준의 보안을 제공해요. 민감한 데이터를 다룰 때 유용해요.확장성SOAP는 다양한 확장 표준을 지원해요. 예를 들어, 메시지의 신뢰성을 보장하는 WS-Reliabl..

웹 애플리케이션 방화벽(WAF)은 웹 애플리케이션을 보호하기 위한 중요한 도구에요. 하지만 모든 방화벽이 완벽한 것은 아니랍니다. 오늘은 WAF의 한 가지 취약점인 NULL 바이트 공격에 대해 알아볼게요.NULL 바이트 공격이란?NULL 바이트 공격은 웹 애플리케이션의 입력 처리 과정에서 NULL 바이트(즉, %00)를 삽입하여 방화벽이나 필터를 우회하는 방법이에요. 예를 들어, 아래와 같은 코드가 있어요:%00이 코드는 NULL 바이트를 포함하고 있어, 특정 상황에서 필터링을 우회할 수 있어요. 그러면 웹 애플리케이션은 이 공격 코드를 제대로 인식하지 못하고 실행하게 되는 거죠.블랙리스트 기반 필터의 문제점많은 WAF는 블랙리스트 기반 필터를 사용해 특정 패턴이나 문자열을 차단하려 해요. 그러나 NUL..

안녕하세요! 오늘은 네트워크 보안의 중요한 요소인 Bastion Host에 대해 이야기해보려고 해요. 안전한 네트워크 접근을 위해 꼭 알아야 할 개념이랍니다.1. Bastion Host란 무엇인가요?Bastion Host는 외부 네트워크와 내부 네트워크 사이의 관문 역할을 하는 보안 장비에요. 이를 통해 내부 네트워크의 중요한 자원을 보호할 수 있어요. 마치 성의 외곽을 지키는 요새처럼, Bastion Host가 네트워크 보안을 지켜준답니다.2. Bastion Host의 역할Bastion Host는 여러 가지 중요한 역할을 수행해요:접근 제어: 외부 사용자들이 내부 네트워크에 접근할 때, 이를 엄격하게 통제해요.로그 및 모니터링: 모든 접근 기록을 남기고 모니터링하여 이상 징후를 감지할 수 있어요.보안 ..

안녕하세요! 오늘은 파이썬에서 아주 유용하게 쓰이는 키워드인 yield에 대해 알아보려고 해요. yield는 제너레이터(generator)를 만드는 데 사용되는데, 이 개념을 이해하면 더 효율적인 코드를 작성할 수 있답니다. 그럼, yield가 무엇인지, 어떻게 사용하는지, 그리고 예제를 통해 자세히 알아볼게요!1. 파이썬 제너레이터란?파이썬에서 제너레이터는 반복 가능한 객체를 만드는 방법 중 하나예요. 일반 함수와는 달리, yield 키워드를 사용해서 값을 하나씩 반환해줍니다. 제너레이터는 다음과 같은 장점을 가지고 있어요:메모리 절약: 한 번에 모든 값을 메모리에 올리지 않고, 필요할 때마다 하나씩 생성해요.코드 가독성: 복잡한 반복문을 간단하게 작성할 수 있어요.2. yield 키워드 이해하기yie..

안녕하세요! 오늘은 파이썬에서 예외를 발생시키는 raise 구문에 대해 알아보려고 해요. 예외는 프로그램 실행 중에 발생하는 에러를 말하는데요, raise 구문은 우리가 직접 예외를 발생시킬 때 사용한답니다. 예제를 통해 자세히 설명드릴게요!1. raise 기본 사용법가장 기본적인 사용법은 raise 다음에 예외 객체를 지정하는 거예요.def divide(a, b): if b == 0: raise ValueError("0으로 나눌 수 없어요!") return a / btry: result = divide(10, 0)except ValueError as e: print(e)위 코드에서 b가 0일 때 ValueError 예외를 발생시켜요. 예외가 발생하면 try 블록이 종료..

안녕하세요 여러분! 오늘은 PHP의 유용한 함수인 addslashes에 대해 알아보려고 해요. 이 함수는 문자열에 슬래시를 추가하여 SQL 인젝션 공격을 방지하는 데 도움을 줘요. 하지만 이 함수만으로는 충분하지 않은 경우도 있답니다. 그럼, addslashes의 사용법과 주의해야 할 점에 대해 함께 알아볼까요?1. addslashes 함수란?addslashes 함수는 문자열 내의 특정 문자 앞에 슬래시를 추가해줘요. 추가되는 문자는 아래와 같아요:단일 인용부호 (')이중 인용부호 (")백슬래시 (\)NULL (NULL)이 함수는 주로 데이터베이스 쿼리에 사용되는 문자열을 안전하게 만들기 위해 사용돼요.string addslashes ( string $str )2. addslashes 사용 예시다음은 a..

안녕하세요! 오늘은 PHP에서 자주 사용하는 parse_str 함수에 대해 이야기해볼게요. 이 함수는 문자열을 해석해서 변수로 변환해주는 아주 유용한 함수랍니다. 하지만 잘못 사용하면 보안 취약점이 발생할 수 있어요. 자, 그럼 parse_str 함수에 대해 자세히 알아보아요!1. parse_str 함수란?parse_str 함수는 URL 쿼리 문자열을 파싱하여 변수로 변환해주는 PHP 함수예요. 예를 들어, a=1&b=2와 같은 문자열을 넘기면, $a는 1로, $b는 2로 설정된답니다.이렇게 간단하게 문자열을 변수로 변환할 수 있어서 유용해요.2. parse_str 함수의 사용법parse_str 함수는 두 가지 형태로 사용할 수 있어요. 첫 번째는 기본적인 형태로, 문자열을 직접 파싱하는 방법이에요. f..

안녕하세요! 이번 글에서는 Flask-Login을 이용해 사용자 인증과 세션 관리를 구현하는 방법을 소개해드릴게요. 📝1. Flask-Login 설정하기먼저, Flask와 필요한 모듈들을 설치해야 해요.from flask import Flask, request, redirect, url_forfrom flask_sqlalchemy import SQLAlchemyfrom flask_login import LoginManager, login_required, login_user, logout_user, UserMixin, current_user이제 Flask 애플리케이션과 데이터베이스를 설정해 볼게요.app = Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI'] ..