a

member_confirm, Open Redirect 취약점

· 2024-05-31 (금) 19:35:13 · 486 · 1
Security 탭에서 제보가 불가능하여 Issues를 통해 제보드립니다.

추가로 발견한 Open Redirect 취약점 내용이며 이전에 제보한 곳과 path가 다른 곳에서 발생합니다.

### Vuln: Open Redirect

Version: 5.5.16

url 파라미터에서 역슬래시에 대한 필터링이 존재하지 않아 Open Redirect 취약점이 발생합니다.

아래는 공격 증명 코드(PoC)이며 원하는 도메인으로 지정한 상태로 테스트할 수 있습니다.
**회원 정보 수정 기능에서 발생하는 것으로 로그인 이후에 테스트 진행해야 합니다.**

PoC
```
https://demo.sir.kr/gnuboard5/bbs/member_confirm.php?url=\google.com
https://demo.sir.kr/gnuboard5/bbs/member_confirm.php?url=\github.com
```

### Impact
- 피싱 사이트로 연계한 공격이 발생할 수 있습니다.

### Secure Code (bbs/member_confirm.php)
아래는 \ 역슬래시를 탐지할 수 있는 예시 시큐어코드입니다.
```php
...

// url 체크
check_url_host($url, '', G5_URL, true);

if($url){
// 역슬래시를 슬래시로 바꾸는 추가 작업
$url = preg_replace('#\\\\#', '/', $url);

$url = preg_replace('#^/\\\{1,}#', '/', $url);

if( preg_match('#^/{3,}#', $url) ){
$url = preg_replace('#^/{3,}#', '/', $url);
}

// 역슬래시가 포함된 URL을 필터링
if (preg_match('/\\\/', $url)) {
alert('url에 올바르지 않은 값이 포함되어 있습니다.', G5_URL);
}
}

$url = get_text($url);

...
```
|

댓글 1개

2024-06-05 (수) 16:01:05
안녕하세요. SIR 입니다.

알려주셔서 정말 감사합니다.

해당 내용을 수정하겠습니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 이슈

64건

좋은 댓글과 좋아요는 제작자에게 큰힘이 됩니다.

+
제목 글쓴이 날짜 조회
24-09-05 조회 274
24-09-02 조회 321
24-08-29 조회 250
24-08-29 조회 243
24-08-29 조회 260
24-08-29 조회 286
24-08-12 조회 236
24-08-12 조회 256
24-07-26 조회 266
24-07-05 조회 265
24-06-07 조회 299
24-06-07 조회 291
24-06-07 조회 303
24-06-04 조회 300
24-05-31 조회 489
24-05-31 조회 487
24-05-29 조회 278
bbeaverfactor...
24-05-25 조회 745
24-04-30 조회 346
bbeaverfactor...
24-04-19 조회 382