본문 바로가기

분류 전체보기479

Active Jamming [RFID] Active Jamming- 태그와 판독기 간에 사전에 약속된 형태의 의미 없는 전자신호를 지속적으로 발생시켜 등록되지 않은 부당한 판독기는 정상적으로 통신하지 못하도록 방해함으로써 데이터를 보호하기 위한 방법. 하지만 이를 통해 RFID 시스템에 대한 공격이나 전파 공해 등의 문제가 될 수 있다. 2020. 3. 3.
NIC(Network Interface Card) 기능 [NIC] NIC(Network Interface Card) 기능- 네트워크 장비와 LAN 사이의 통신을 준비한다.- 전송될 데이터를 병렬에서 직렬로 전환한다.- 빠른 전송을 위해서 데이터를 코딩 및 압축한다.- 목적지 장비의 NIC는 데이터를 수신하고 CPU로 데이터를 전달한다.- Access Control 기능을 구현하도록 프로그래밍하는 하드웨어와 펌웨어가 들어 있다. 2020. 3. 3.
[HackCTF] LOL [LOL] _ SSRF - URL 은 flag.php 이지만 local이 아니라고 한다.- 나중에 local로 flag.php에 접속하면 되는것 같다. - just play have fun enjoy the game을 누르면 나오는 page다.- user에 아무거나 입력하고 제출을 해보자. - 엥.. op.gg 가 나온다. 코드를 확인해 보자. - url의 value에는 op.gg 페이지가 들어있다.- 작동 방식은 http://www.op.gg/summoner/userName= + (입력한 값) 으로 되는것 같다. - SSRF 를 하기 위해서는 @를 사용한다. 그러면 @ 이전의 값들이 무시가 되고 그 이후의 값으로 page가 이동이 된다.- url의 value값에 127.0.0.1 을 넣어봤지만 필터링을.. 2020. 2. 25.
[HackCTF] Cookie [Cookie] - 쿠키가 맛있어 보인다. 쿠키를 확인해보자. - 가장 수상한 쿠키다.- Cookie를 보면 뭔가 Base64 같은 느낌이 난다.. - Base64로 3번 디코딩을 하니 저런 문자열이 나왔다. - admin으로 변경하여 다시 Cookie값을 변경하여 보자. - 패스워드가 틀렸다고 한다. - 이 값을 가지고 무언가를 하는것 같은데..- 도저히 몰라서 구글링을 했다... - 사실 이 문제도 Input Check 문제처럼 strcmp 취약점을 이용하는 문제였다.- PassAdmin을 배열형식으로 보내면 strcmp를 우회할 수 있다.https://security-nanglam.tistory.com/309 2020. 2. 25.
[HackCTF] 가위바위보 [가위바위보] - 가위바위보는 게임기능 말고는 별게 없는 것 같다. 설정을 들어가자. - 설정에 들어왔다. 이름은 변경이 잘되고 사진도 잘된다. - 사진에 php 파일을 넣었더니 이미지 파일이 아니라고 한다.- 또한 php파일을 png로 확장자를 변경하여 넣어도 이미지 파일이 아니라고 한다. - 이미지를 smile.png -> smile.txt 로 변경하여 업로드 해보니 사진이 변경되었다.- 파일의 헤더를 검사하는 기능이 있는것 같다. - shell.php 앞에 png 헤더를 붙여서 다시 업로드 해보자. - 업로드가 잘 되었지만 파일이 열리지 않았다. - 파일은 http://ctf.j0n9hyun.xyz:2037/avatars/현재이름 에 저장되어 있다.- 내 이름에 확장자를 붙여보자. - 파일이 잘열린.. 2020. 2. 25.
[HackCTF] Home [Home] _ XFF 변조 - 인증되지 않은 IP 주소라고 한다. 그리고 일부 IP를 필터링하고 있다고 한다. - 여러 자료들을 검색하다가 나온 것이다.- XFF 를 이용하면 원래의 IP 주소를 속일 수 있다고 한다. - 형태는 위와 같다. X-Forwarded-For : 127.0.0.1 - BurpSuite를 사용하여 헤더를 추가하여 보냈다. - flag가 딱! 관련 주소- https://ko.wikipedia.org- http://boansecurity.blogspot.com 2020. 2. 25.
[HackCTF] Input Check [Input Check] - flag를 원하면 flag를 입력하라고 한다. - flag를 입력 해보니 No Hack~ 이라 뜬다. - 소스를 보니 주석으로 힌트가 있다.- Array Type check 취약점에 대해 검색을 해보니 strcmp의 취약점이 나왔다.strcmp에서 array 값을 넣으면 php 버젼별로 결과값이 다르다.php 5.2 : 1 or -1 (Array를 문자열로 인식)php 5.3 : null null == 0 이 되므로 true가 된다. 단, null === 0은 falsepost 방식으로도 취약점이 발생한다고 한다.참조 블로그 : https://hackability.kr/ - Array 형태로 flag를 입력하면 flag가 나온다. 2020. 2. 24.
[HackCTF] Time [Time] - 시간이 60*60*24*30*2보다 크고 60*60*24*30*3보다 작으면 flag가 출력된다. - 6480000을 넣어서 해봤지만.. sleep 함수 때문에 저 초동안 기다려야 했다.- 이 방법이 아닌것 같아서 is_numeric 함수의 취약점을 찾아봤다. - 우선 문자열로 넣었을때, 지수 표현도 숫자로 표현이 가능하다는 점이다.- 마침 sleep함수에는 int로 형변환을 하니, 지수 표현을 통해서 if문을 넘어가고 sleep을 조금만 하면 될 것이라 생각했다.- sleep에서 int로 형변환을 하면 소수가 날라간다. (e는 문자열이라 오류가 뜬다.)- ex) 0.648e7 = 0초- ex) 6.48e6 = 6초 - 시간이 60*60*24*30*2보다 크고 60*60*24*30*3보다.. 2020. 2. 24.
[HackCTF] 마법봉 [마법봉] - 해쉬에 마법을 부여한다.. 매직 해쉬가 바로 떠올랐다. - if 문을 보면 240610708을 md5로 암호화 하고, input 값을 sha1로 암호화 한뒤 비교를한다.- md5(240610708)의 값이 0e 로 시작하기 때문에 이 값은 int == int 비교를 할때 0으로 인식된다.- 즉, sha1 암호화를 하면 0e로 시작하는 값을 찾으면 된다.- 이 두값을 비교하면 int == int 이기 때문에 0 == 0 이되어 true 값이 된다.- 0e123 = 0^123 = 0 - 10932435112값을 입력하면 flag가 나온다. 참고 블로그https://rootable.tistory.com/ 2020. 2. 24.
[HackCTF] Login [Login] - View Source를 눌러보자. - 필터가 없고, id 값을 꺼내오면 된다. - 기본적인 sql injection 구문을 날리면 flag가 나온다. 2020. 2. 24.
[HackCTF] Read File [Read File] - command에 주소가 있는것으로 보아 LFI가 생각났다. - flag.php를 읽으라 그래서 flag.php를 입력하니 빈창만 뜬다. - 아무 값이나 넣어도 똑같이 뜬다.- 이 경우 유추할 수 있는게 flag값을 다른 문자로 교체하거나, flag 자체를 막는 것으로 생각할 수 있다. - 혹시 몰라 fflaglag.php를 입력했는데 flag.php가 읽혔다. - 아마 flag 문자열을 삭제하고 나머지 값으로 파일을 읽는것 같다. 2020. 2. 24.
[HackCTF] Guess me [Guess me] - guess와 secretcode가 같으면 문제가 풀리는 문제다. - secret.txt에 들어가보니 그렇게 쉽겐 안된다고 한다... - extract에서 취약점이 발생할 것 같아 검색을 해봤다.- 취약점은 extract전에 변수가 선언되어 있을 때, 같은 변수명으로 한번더 선언하면 초기값이 변경된다. - filename=a 를 전송하면 $filename = 'a' 가 되고, trim 함수에서 아무 값도 가져오지 않는다.- $secretcode에는 아무값도 안들어 가게 되고, guess= 빈 값을 주면 $guess === $secretcode가 참이 되어 flag가 나온다. 2020. 2. 24.
[HackCTF] 보물 [보물] - 페이지 숫자 중엔 비밀이 있다며 찾아보라고 한다.. - Page1을 누르면 get 방식으로 page=1을 전송하고 아래에 해쉬값이 나온다. - 이 문제는 예전에 한번 봤던 문제여서 바로 코드를 짜봤다.- 해쉬값은 쓰레기값이고, page를 돌아 다니다 보면 flag가 나온다. - 실행을 하면 page=1225에 플래그가 있다고 한다. 2020. 2. 24.
[HackCTF] Button [Button] - 아래 버튼을 눌러서 플래그를 출력하자...! - value 값을 button -> flag로 변경하여 flag를 보내보자. - 오잉 플래그가 나왔다.. 2020. 2. 24.
[HackCTF] Hidden [Hidden] - 5번 파일에 플래그가 있다고한다. 소스코드를 확인해보자. - value값들이 1, 2, 3, 4 로 되어있다. 5번 버튼도 만들어주자. - 5번 버튼을 form태그로 만든후 버튼을 클릭하면 flag가 나온다. 2020. 2. 24.