전체 글

전체 글

    [FTZ] 해커스쿨 FTZ level3 - Write Up

    [FTZ] 해커스쿨 FTZ level3 - Write Up

    접속 정보 ID : level3 PW : (level2의 결과) 문제 해결 과정 우선 level1과 level2를 해보면서 전체적으로 현재의 레벨에서 다음 레벨 권한의 쉘을 획득해 비밀번호를 알아내는 방식으로 파악했다. 그래서 이번엔 힌트를 먼저 보지 않고 해보기로 했다. 앞에서의 방식처럼 우선 setuid가 level4권한으로 설정된 파일을 찾아본다. find / -perm -4000 -user level4 2> /dev/null 역시나 존재한다. 이 실행파일을 실행해본다. 이제 이게 어떤 파일인지 파악해보려 했으나 방법을 잘 모르겠다. 이제 힌트를 볼 차례이다. #include #include #include int main(int argc, char **argv){ char cmd[100]; if(..

    [verilog] modelsim - (vish-4014) No objects found matching '/Testbench/*'

    [verilog] modelsim - (vish-4014) No objects found matching '/Testbench/*'

    문제 임베디드 시스템 수업을 듣고있는데, verilog test bench 실습 중 다음과 같은 오류가 발생했다. 제대로 된 모습은 아래와 같아야 한다. test bench 하위에 And2.v에 대한 객체가 생성되지 않은 것 같다. 우선 오류가 발생한 과정은 다음과 같다. 두 파일을 모두 컴파일한 다음 테스트 벤치를 시뮬레이션을 시작한다. 그런 다음 웨이브 창으로 이동하여 테스트를 웨이브에 넣으려고 하면 오류가 발생한다. 해결 https://stackoverflow.com/questions/55158783/modelsim-error-no-objects-found-matching-test 이 사이트를 보고 참고해 해결하였다. 이 사이트의 답변에 따르면 원인은 최적화 때문이라고 한다. 생각해보니 opt라는 ..

    [FTZ] 해커스쿨 Level2 - Write Up

    [FTZ] 해커스쿨 Level2 - Write Up

    접속정보 ID : level2 PW : (level1을 해결하면 level2에 대한 비밀번호를 알 수 있음) level1과 마찬가지로 접속을 하면 현재 위치가 /home/level2이고, hint 파일이 존재하는 것을 알 수 있다. 텍스트 에디터 중 vi에디터의 경우 명령모드가 있어 쉘 명령을 실행시킬 수 있다. 힌트와 level1의 풀이 과정을 통해 생각해보면, level3권한의 에디터를 실행시켜 level3의 쉘을 실행하고, level3의 비밀번호를 알아내야한다. 그럼 이제 level1에서 했던 것처럼 level3권한을 가진 파일을 먼저 찾아본다. find / -perm -4000 -user level3 2> /dev/null 역시 하나의 파일이 뜬다. 해당 파일은 실행파일이므로 실행해본다. 실행해보..

    [FTZ] 해커스쿨 Level1 - Write Up

    [FTZ] 해커스쿨 Level1 - Write Up

    문제 접속 ID/PW ID : level1 PW : level1 FTZ Level1 문제에 접속을 해 현재 경로와 어떤 파일들이 있는지 확인한다. hint 파일이 있으니 내용을 확인해보자. setuid가 걸린 파일을 찾기 위해 find명령어와 권한관련 옵션인 -perm을 이용하고, 파일소유자관련 옵션인 -user를 이용한다. 권한이 4000이라는 것은 특수권한자리에 setuid가 설정되어있다는 것을 의미한다. find / -perm -4000 -user level2 그럼 아래와 같이 권한없는 파일에 대한 error들이 나열된다. 이런 error들로 원하는 결과가 잘 안보이므로 아래와 같은 명령어로 error들을 날려준다. find / -perm -4000 -user level2 2> /dev/null 2..

    [Dreamhack] shell_basic

    보호되어 있는 글입니다.

    [DreamHack]devtools-sources

    보호되어 있는 글입니다.

    [DreamHack]Carve Party

    보호되어 있는 글입니다.

    [python][flask]플라스크 기초-redirect & errorhandler

    [python][flask]플라스크 기초-redirect & errorhandler

    python flask에서는 다른 엔드 포인트로 이동하기 위해 redirect() 함수를 이용한다.에러를 발생시키고 싶으면 abort() 함수를 이용한다. 실습코드 GitHub - gkdms1457/langage-review: review and practice programing langage review and practice programing langage. Contribute to gkdms1457/langage-review development by creating an account on GitHub. github.com 예제 코드 및 설명 from flask import Flask, redirect, url_for, abort app = Flask(__name__) @app.errorhan..

    [python][flask]플라스크 기초-jinja2

    [python][flask]플라스크 기초-jinja2

    jinja2는 python flask에 내장되어있는 템플릿 엔진이다. 실습코드 GitHub - gkdms1457/langage-review: review and practice programing langage review and practice programing langage. Contribute to gkdms1457/langage-review development by creating an account on GitHub. github.com 목차 템플릿 엔진? -1 사용이유 jinja2 문법 jinja2 실습 및 추가 문법 템플릿 엔진(templeate engine)? 템플릿 양식과 특정 데이터 모델에 따른 입력 자료를 합성하여 결과 문서를 출력하는 소프트웨어를 말한다. 자료(Data)를 결합하..

    [python][flask]플라스크 기초-템플릿(render_template)

    [python][flask]플라스크 기초-템플릿(render_template)

    render_template render_template은 flask에서 제공하는 함수로 지정한 폴더에 존재하는 html파일을 읽어오는 함수이다. 예제 다음과 같은 구성으로 정적파일(css, js, image,..)과 템플릿(html)들을 각각 static폴더와 templates 폴더에 저장하였다. flask객체는 폴더 지정을 통해 정적 파일과 템플릿의 위치를 추적한다. app = Flask(__name__, static_folder='static', template_folder='templates') static_folder를 지정하면 /static URL로 접근 가능하다. template_folder를 지정해주면 render_template() 함수를 통해 해당 템플릿 파일을 찾을 수 있다. ex.p..