SSTI 공격 이론 및 실습 (Server-Side Template Injection)
·
웹해킹
안녕하세요! 오늘은 웹 해킹 기법 중 SSTI라는 공격기법에 대하여 알아보고 직접 만든 사이트로 실습&보안조치까지 해보겠습니다. 오늘 내용은 기본적으로 웹 템플릿 엔진에 대한 이해가 필요합니다.1. 웹 템플릿 엔진 이란? 각 웹 개발 언어별로 템플릿 엔진이 다릅니다.저는 이번시간에 PHP기반 템플릿 엔진인 TWIG에 대하여 다루겠습니다! 2. SSTI (Server-Side Template Injection) 이란? SSTI(Server-Side Template Injection)란, 웹 템플릿 엔진을 사용하는 웹 서비스에서 악의적인 템플릿 구문을 삽입하여 서버 내에서 악의적인 동작을 수행하도록 하는 공격입니다! 이 취약점으로 인하여 기본적으로 XSS부터 시작하여 CSRF , 더 나아가 RCE 까지도 ..
[PHP 웹개발] PHP 템플릿엔진 TWIG 설치방법!
·
웹개발(PHP-Mysql)
안녕하세요! 최근 SSTI 라는 해킹기법을 공부하다가 좀 더 정확히 이해하고 싶어서 직접 사이트에 구현을 해보았습니다!그리하여 오늘은 템플릿엔진인 TWIG 설치법에 대하여 포스팅하려고 합니다!우선 템플릿엔진이란 무엇인지, 왜 필요한지 간단히 알아보고 갑시다! 1. 템플릿 엔진이란?웹 템플릿 엔진이란?웹 템플릿이란 지정된 템플릿 양식과 데이터가 합쳐져서 HTML 문서를 만들 때 사용되는 틀입니다!예를 들어 한국어 영어 일본어 페이지를 만들고 싶은데 3개의 PHP 파일을 만드는 건 비효율적일 것입니다.이럴 때 1개의 틀(템플릿)을 짜놓고 안에 내용만 동적으로 변화시킨다면 좀 더 가벼운 코딩을 할 수 있게 되겠죠!이렇게 효율적으로 웹사이트를 구현할 수 있게 해 주는 것이 웹 템플릿 엔진입니다. 각 웹 개발..
[Android Studio] PHP 서버와 통신시 세션ID 활용하는 방법 -Kotlin
·
모바일 앱개발(Kotlin-PHP-Mysql)
안녕하세요! 저번 포스팅에서 게시글 CRUD 기능을 작성하다보니 혹시 세션을 어떻게 적용하는지에 대하여 궁금해 하시는 분들이 있을까봐 포스팅 하게되었습니다. 게시글 삭제나 수정을 하려면 인증절차를 거쳐야 하는데 그 과정에서 세션ID가 사용됩니다. 이를 위해 세션ID를 어떻게 전달하고 사용하는지 로그인절차로 예를 들어서 설명해드리겠습니다! [Android Studio] 게시글 CRUD기능 구현 [Android Studio] 게시글 CRUD(생성,읽기,수정,삭제)기능 구현 -Kotlin안녕하세요! 저번 포스팅 '게시글 읽기 페이지 구현' 에 이어서 CRUD 기능을 구현해보겠습니다. 사실 게시글 읽기 기능 자체가 CRUD중 Read에 해당하는 기능인지라 이번 포스팅에선 Create & Update & Dele..
[Android Studio] 게시글 CRUD(생성,읽기,수정,삭제)기능 구현 -Kotlin
·
모바일 앱개발(Kotlin-PHP-Mysql)
안녕하세요! 저번 포스팅 '게시글 읽기 페이지 구현' 에 이어서 CRUD 기능을 구현해보겠습니다. 사실 게시글 읽기 기능 자체가 CRUD중 Read에 해당하는 기능인지라 이번 포스팅에선 Create & Update & Delete 기능을 구현해보겠습니다.0. 완성된 동작 미리보기0.1 C_(Create) 기능게시판 내의 작성버튼 클릭게시글 작성0.2 R_(Read) 기능작성된 게시글 클릭게시물 내용 확인 0.3 U_(Update) 기능게시글 수정 버튼 클릭게시글 수정 0.4 D_(Delete) 기능게시글 내의 삭제버튼 클릭삭제된 게시글 확인 1. R_(read) 기능 구현사실 read기능은 저번 포스팅에서 이미 구현해두었습니다. Read기능 설명까지 이 게시물에 들어가게 될경우 한 포스팅에 너무 많은 정..
[Android Studio] 게시글 읽기 페이지 구현(CRUD->R) - Kotlin
·
모바일 앱개발(Kotlin-PHP-Mysql)
안녕하십니까! 저번 포스팅에선 DB에서 게시글 정보를 가져온 후 리사이클뷰로 띄우는 작업을 하였습니다. 이번 포스팅은 저번 '게시판 기능 구현' 포스팅에 이어서 글을 클릭하였을 때 게시글을 읽을 수 있는 기능을 구현해 보겠습니다!  '게시판 기능 구현 포스팅' [Android Studio] 게시판 기능 구현 + 리사이클 뷰 생성 (Kotlin)안녕하십니까! 저번 회원가입 기능에 이어서 게시판 기능을 구현해 보겠습니다. 게시판은 리사이클 뷰를 사용하여 구현을 했으며 인스타그램처럼 편하게 내리면서 볼 수 있게 구현해 보았습니jamesbexter.tistory.com 게시판에서 게시글 클릭게시글 읽기 페이지 > 우선 읽기 페이지는 다음과 같이 디자인해주었습니다.↑ 읽기 페이지 UI ↓ 읽기 페이지 코드 ..
[Android Studio] (Kotlin ↔ PHP ↔ MYSQL) 연동을 통해 로그인 기능 구현하기
·
모바일 앱개발(Kotlin-PHP-Mysql)
안녕하세요! 이번시간에는 Kotlin을 통해서 PHP와 통신하여 MYSQL(DB)에 있는 정보를 가져오는 코드를 짜보겠습니다. 우선 컴퓨터에 설치할 준비물은 다음과 같습니다. 준비가 끝나셨다면 밑에 내용으로 차근차근 따라오시면 됩니다!       [준비물]Android StudioAPM서버(Apache+PHP+Mysql)Kotlin언어로 기본적인 기능구현 경험 "Kotlin 언어로 기본적인 기능구현 경험이라  함은?"> 기본적인 Kotlin 기능구현 강좌 하나정도는 완강하시고 오는 게 좋다는 뜻입니다.개인적으로 저는 유튜버 '홍드로이드' 님의 Kotlin 개발강의 영상을 완강하여 기본적인 UI설정이나 기능구현을 미리 구현해 본 상태에서 시작하니 훨씬 쉬웠습니다. Kotlin 문법강의는 안 듣더라도 밑에 ..