전체 글 105

클라우드 과정(MTC AZ-900) - 2주차

Switch 기준으로 오른쪽 : 내부 네트워크(LAN) 내부에서 통신할 때는 MAC Address 사용해서 통신 웹 서버의 비즈니스 로직 -> SQL Server와 연결 -> 데이터 서버와 관련 정보는 Web Plus Database(스토리지)에 저장 네트워크 레이어(Router) 서버 레이어(Internet Information Services hosting Web Plus) 보안 레이어(External Firewall, Internal Firewall) 데이터베이스 레이어(SQL Server) 스토리지 레이어(Web Plus Database) 라우터 : 인터넷과 내부 네트워크가 외부로 나가기 위한 관문 DMZ존 : 방화벽이 앞단에 하나, 뒷단에 하나..

자격증/AZ-900 2021.09.15

클라우드 과정(MTC AZ-900) - 1주차

인터넷 : 내부 시스템에서 외부 시스템으로 나가는 연결고리 클라우드 컴퓨팅 : 시스템이 내부에 있지 않고 외부에 있을 경우, 외부에 있는 엄청나게 큰 컴퓨터 Ex ) 구글, 네이버, 마이크로소프트, 아이비엠 등 IT = Information Technology 의 약자, 정보기술 1950~1970 : Mainframe 1970~1990 : PC(마이크로소프트)/Client-Server (Mainframe 을 클라이언트와 서버로 나눠서 생각함 1990~2010 : Web(인터넷) -- 3차 산업혁명 2010~ : Cloud (2006년에 아마존에서 클라우드라는 개념을 만듦) IBM 7090 장비 = 메인프레임 메인프레임 사양 : 10개의 자기 테이프 데이터..

자격증/AZ-900 2021.09.15

[FTZ] level14

level14 (password : what that nigga want?) level14에 접속을 해서 'ls-l'를 통해 level15의 권한이 걸려 있는 'attackme'라는 setuid인 파일과 'hint' 파일이 존재하는 것을 확인하였다. 'cat' 명령어를 통해 'hint' 파일의 내용을 확인하였다. 더보기 ※ 'hint' 파일 해석 #include #include main() { int crap; int check; char buf[20]; (1) fgets(buf,45,stdin); (2) if (check==0xdeadbeef) { setreuid(3095,3095); (3) system("/bin/sh"); (4) } } (1) 20byte 크기의 'buf' 변수 선언 (2) 'fge..

Systemhacking/FTZ 2021.05.25

[FTZ] level13

level 13 (password : have no clue) level13 에 접속을 해서 'ls -l' 를 통해 level14 권한이 걸려 있는 'attackme' 라는 setuid인 파일과 'hint' 파일이 존재하는 것을 확인하였다. 'cat' 명령어를 통해 'hint' 파일의 내용을 확인하였다. 더보기 ※ 'hint' 파일 해석 #include main(int argc, char *argv[]) { long i=0x1234567; (1) char buf[1024]; (2) setreuid( 3094, 3094 ); (3) if(argc > 1) strcpy(buf,argv[1]); (4) if(i != 0x1234567) { (5) printf(" Warnning: Buffer Overflow ..

Systemhacking/FTZ 2021.05.23

[FTZ] level12

level 12 (password : it is like this) level12에 접속을 해서 'ls -l' 를 통해 level13 권한이 걸려 있는 'attackme' 라는 setuid인 파일과 'hint' 파일이 존재하는 것을 확인하였다. 'cat' 명령어를 통해 'hint' 파일의 내용을 확인하였다. 더보기 ※ 'hint' 파일 해석 #include #include #include int main( void ) { char str[256]; (1) setreuid( 3093, 3093 ); (2) printf( "문장을 입력하세요.\n" ); (3) gets( str ); (4) printf( "%s\n", str ); (5) } (1) str 배열의 크기를 256 byte로 지정 (2) leve..

Systemhacking/FTZ 2021.05.23

[FTZ] level 11

level11 (password : what!@#$?) level11에 접속을 해서 'ls -l' 를 통해 'attackme' 라는 setuid인 파일과 'hint' 파일이 존재하는 것을 확인하였다. 'cat' 명령어를 통해 'hint' 파일 내용을 확인하였다. 더보기 ※ 'hint' 파일 해석 #include #include int main( int argc, char *argv[] ) { char str[256]; (1) setreuid( 3092, 3092 ); (2) strcpy( str, argv[1] ); (3) printf( str ); (4) } (1) str 배열의 크기를 256 바이트로 지정 (2) level12의 사용자 ID (3) 사용자가 입력한 값을 'strcpy' 를 통해 'st..

Systemhacking/FTZ 2021.05.17

[FTZ] level10

level 10 (password : interesting to hack!) 'ls'을 통해 'hint '파일이 존재하는 것을 확인한 후, 'cat' 명령어를 통해 내용을 확인하였다. '공유 메모리'를 이용하였고, 공유 메모리 식별 번호인 'key_t = 7530' 라는 정보를 통해 level11의 권한을 얻는 문제이다. 즉, '7530' 위치에 접근하는 소스코드를 작성해야 한다. '공유 메모리'는 프로세스 간에 공유해서 쓰는 메모리를 의미한다. '공유 메모리'는 공유 메모리를 사용할 프로세서 중 하나가 조건을 설정해 공유 메모리를 만들고, 그 외의 프로세서가 필요한 정보를 이용해 공유 메모리를 같이 사용하는 것이다. 더보기 ※ 공유 메모리 설정할 때 쓰이는 함수 1. shmget() - 공유 메모리를 ..

Systemhacking/FTZ 2021.05.17

[FTZ] level9

level 9 (password : apple) 'ls'을 통해 'hint' 파일이 존재하는 것을 확인한 후, 'cat'명령어를 통해 내용을 확인하였다. '/user/bin'에 위치한 'bof' 파일의 소스코드가 출력되었고, 이 소스를 이용하여 level10의 권한을 얻는 문제이다. 여기서 나오는 'bof'는 시스템 해킹에서 가장 기초가 되는 취약점으로 버퍼가 넘쳤음을 의미하는 'buffer over flow' 의 준말이다. 공격자는 지정한 입력값 외에 원하는 값을 버퍼의 크기보다 많이 넣으면 공격자가 원하는 명령을 실행할 수 있다. 먼저 'bof' 소스를 해석해보았다. #include #include #include main(){ char buf2[10]; (1) char buf[10]; printf(..

Systemhacking/FTZ 2021.05.06