분류 전체보기

[Webhacking.kr] old-05

문제 문제풀이 Login 버튼 누르면 /mem/login.php 경로로 접근하고, Join 버튼을 누르면 아래 문구가 뜨면서 접근할 수 없다. Login 페이지 경로와 비슷하게 /mem/join.php로 접근하면, 아래 스크립트를 확인할 수 있다. l='a';ll='b';lll='c';llll='d';lllll='e';llllll='f';lllllll='g';llllllll='h';lllllllll='i';llllllllll='j';lllllllllll='k';llllllllllll='l';lllllllllllll='m';llllllllllllll='n';lllllllllllllll='o';llllllllllllllll='p';lllllllllllllllll='q';llllllllllllllllll='r..

[Webhacking.kr] old-04

문제 Password [view-source] 문제풀이 10000000 ~ 99999999 숫자 중 하나 + salt_for_you를 chall4 세션값에 저장 위의 값을 sha1 500번 수행한 후, hash 변수에 저장 hash 값은 화면에 출력하고, 사용자가 입력한 키 값이 chall4 세션값과 동일하면 문제해결 해시값은 복호화가 불가능하기 때문에, 레인보우 테이블을 통해 원래 값을 알아내야 함 레인보우 테이블 from hashlib import sha1 f=open("hash.txt","w") for i in range(10000000,20000000): hash=str(i)+"salt_for_you" for j in range(0,500): hash=sha1(hash.encode('utf-8')..

[Webhacking.kr] old-02

문제 if you access admin.php ~ webhacking.kr/challenge/web-02/admin.php admin.php 페이지를 확인할 수 있다. 비밀번호를 찾으면 문제 해결된다. 문제 풀이 비밀번호를 찾기 위해서 이전 페이지로 돌아간다. 쿠키의 값에 따라 주석이 변화하는 것을 확인할 수 있다. SQLI 공격이 가능한 것을 확인할 수 있다. SQLI - 테이블 개수 확인 select count(table_name) from information_schema.tables where table_schema=database() SQLI - 테이블 이름 길이 확인 select length(table_name) from information_schema.tables where table_s..

hashlib

hashlib MD5, SHA256 등의 알고리즘으로 문자열을 해싱할 때 사용하는 모듈이다. - 해싱(hashing) 원본 문자열을 알아볼 수 없는 난해한 문자열로 정의하는 방법이다. 해시값을 조사하여 데이터 변조 여부를 확인한다. - digest() 해싱한 바이트 문자열을 반환한다. - hexdigest() 해싱한 바이트 문자열을 16진수로 변환한 문자열을 반환한다. python code import hashlib sha256_hash=hashlib.sha256() sha256_hash.update("test".encode('utf-8')) res1=sha256_hash.digest() print(res1) res2=sha256_hash.hexdigest() print(res2) b'\x9f\x86\x..

programming/python 2023.02.18

스마트 컨트랙트 배포(Truffle)

* Baobab 네트워크에서 배포합니다. - 트러플(Truffle) 솔리디티로 작성된 스마트 컨트랙트를 트러플을 통해 컴파일하고 배포할 수 있다. - 트러플 설치 $ npm i -g truffle - 클레이 받기 배포를 위해서는 klay가 필요하기 때문에 카이카스 지갑에 klay를 받는다. 2023.02.03 - [blockchain] - [Klaytn] Baobab환경-Klay 받기 [Klaytn] Baobab환경-Klay 받기 - Baobab Klaytn Wallet 사이트 접속 https://baobab.wallet.klaytn.foundation/faucet Klaytn Wallet baobab.wallet.klaytn.foundation - Faucet 실행 계정 주소를 입력하면 KLAY 잔액을..

blockchain 2023.02.12

백준, 프로그래머스 GitHub 연동

- 크롬 확장 프로그램 백준허브 백준허브(BaekjoonHub) Automatically integrate your BOJ submissions to GitHub chrome.google.com Chrome에 추가 버튼을 눌러 확장 프로그램으로 추가해준다. 크롬 창의 상단에서 퍼즐모양을 누르고, 고정 버튼을 누르면 확장프로그램 상단에 고정되는 것을 볼 수 있다. 백준 허브-Authenticate를 누르면 깃허브 계정과 연동할 수 있다. 로그인 후, 아래와 같은 화면이 뜨는데 연동하는 두가지 방법이 있다. - Create a new Private Repository : 새로운 레포지토리를 생성하여 연결한다. - Link an Exisiting Repository : 기존 레포지토리에 연결한다. 연동 완료 ..

git 2023.02.09

[Klaytn] 스마트 컨트랙트 배포

- 트러플 구성 truffle-config.js 파일은 컨트랙트를 배포하는 방법을 설명한다. 어떤 Klaytn 계정이 컨트랙트를 배포할 것인지, 어떤 네트워크에 배포할 것인지, 가스를 얼마 지불할 것인지 항목을 구성한다. - 스마트 컨트랙트 배포 계약 배포 방법은 두가지가 존재한다. 1. private key 이용 개인키를 사용하여 컨트랙트를 배포하려면 provider 옵션이 필요하다. new HDWalletProvider()의 첫번째 인수로 개인키를, 두번째 인수로 Klaytn노드의 URL을 전달한다. { ..., provider:new HDWalletProvider( 'PRIVATE_KEY', 'https://api.baobab.klaytn.net:8651', ), ... } baobab 네트워크에는..

blockchain 2023.02.09