[G5] 게시판 > 글쓰기(에디터) > 내용 에 CSS & javascript(자바스크립트) 사용하기 > 기술자료 | 해피정닷컴

[G5] 게시판 > 글쓰기(에디터) > 내용 에 CSS & javascript(자바스크립트) 사용하기 > 기술자료

본문 바로가기

사이트 내 전체검색

[G5] 게시판 > 글쓰기(에디터) > 내용 에 CSS & javascript(자바스크립트) 사용하기 > 기술자료

그누보드 [G5] 게시판 > 글쓰기(에디터) > 내용 에 CSS & javascript(자바스크립트) 사용하기

페이지 정보


본문

게시판 본문에 글을 작성할때 css 나 javascript 는 작동하지 않습니다
정확히 말하면, 디비의 게시판 테이블의 wr_content 에는 정보가 있으나, view 할때 css 와 javacript 를 제거후 보여줍니다.


1. 예를 들면 본문에 아래의 내용을 저장했다면

1-1. write.php 에 입력한 내용
<style>
.a1 { font-size:2em; }
.a2 { font-size:1.1em; }
</style>
<a href="#" onclick="window.open('/delivery.php','evaluate','resizable=no, scrollbars=no, width=500, height=500');">배송서비스신청</a>

1-2. 디비에 wr_content 에 저장 OK

1-3. view.php 에서 보여질때
<a href="#">배송서비스신청</a>


2. <style>..</style> 과 onclick 내용이 모두 제거후 보여지는데, 이것을 내가 저장한 내용으로 보여주고 싶을때 아래와 같이 합니다.

2-1. /lib/common.lib.php 내용에서 conv_content 함수에 대해서 아래 붉은 글자를 추가

function conv_content($content, $html, $filter=true)
{
    global $config, $board, $bo_table// 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)

    if ($html)
    {
        .....

        $content = preg_replace($source, $target, $content);

        // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용) - lib/common.lib.php & bbs/write.php 2개 파일 수정 필요
        if ($bo_table=='특정게시판') { } else { // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)

        if($filter)
            $content = html_purifier($content);
        } // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)


이렇게 수정하면 특정게시판일때는 html_purifier 가 작동하지 않고, 저장된 원본코드가 그대로 표시가 됩니다.
관리자가 제어하는 게시판이 아닌 것까지 풀면 해킹의 위험이 있으므로 주의가 필요합니다.


2-2. /bbs/write.php  에서 붉은 글자를 추가
    if ( $w == 'u' && (! $is_member || ! $is_admin || $write['mb_id'] !== $member['mb_id']) ){
        // kisa 취약점 제보 xss 필터 적용적용
        // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용) - lib/common.lib.php & bbs/write.php 2개 파일 수정 필요
        if ($bo_table=='특정게시판') { // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)
        $content = get_text($write['wr_content'], 0);
        } else { // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)

        $content = get_text(html_purifier($write['wr_content']), 0);
        } // 지정된 게시판은 css 와 javascript 입력내용 모두 노출 ( 2021-02-18 정창용)
    }

댓글목록

등록된 댓글이 없습니다.


Total 2,634건 10 페이지
  • RSS
기술자료 목록
2454
MySQL   11734  2021-03-23 17:46 ~ 2021-03-23 18:04  
2453
PHP   8089  2021-03-04 19:10 ~ 2021-06-22 00:03  
2452
PHP   6830  2021-03-03 16:20 ~ 2021-03-03 16:21  
2451
그누보드   4574  2021-02-25 22:28 ~ 2021-03-17 11:33  
열람
그누보드   6048  2021-02-18 10:28 ~ 2021-02-18 14:10  
2449
그누보드   6462  2021-02-08 14:43 ~ 2021-02-08 16:31  
2448
PHP   11384  2021-01-20 12:07 ~ 2021-01-27 13:35  
2447
전자결제   8487  2021-01-01 01:20 ~ 2021-01-13 19:41  
2446
JavaScript   6515  2020-12-24 19:40  
2445
HTML   5087  2020-12-20 11:42  
2444
SNS   8812  2020-12-18 07:58  
2443
그누보드   7525  2020-12-14 18:09 ~ 2023-04-04 11:18  
2442
SNS   6384  2020-12-11 09:37 ~ 2020-12-18 11:55  
2441
Apple   5892  2020-12-10 14:22 ~ 2020-12-17 00:27  
2440
Android   9495  2020-12-10 12:22 ~ 2020-12-17 00:27  
2439
그누보드   6334  2020-12-07 15:15 ~ 2022-12-17 21:15  
2438
SNS   6646  2020-11-30 14:39 ~ 2020-12-12 09:04  
2437
SNS   6016  2020-11-29 16:55 ~ 2020-12-18 19:53  
2436
SNS   10127  2020-11-25 14:04 ~ 2020-12-12 09:05  
2435
Apple   5512  2020-11-24 19:27 ~ 2020-11-24 19:34  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: 서울센터 (08393) 서울시 구로구 디지털로32가길 16 파트너스타워2차 1206-280호
        대전센터 (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 지원1동 205호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 2014-서울구로-0074 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.