[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 458건 2 페이지
  • RSS
기술자료 목록
438
그누보드   5200  2021-10-08 14:45 ~ 2021-10-08 16:11  
437
그누보드   6258  2021-10-08 07:41 ~ 2021-10-14 10:40  
436
그누보드   4826  2021-09-02 12:15 ~ 2021-09-02 15:15  
435
그누보드   4775  2021-08-31 18:52  
434
그누보드   5098  2021-08-01 20:59 ~ 2021-08-02 09:19  
433
그누보드   6838  2021-07-27 14:45 ~ 2021-08-05 18:06  
432
그누보드   5668  2021-06-30 07:32 ~ 2021-06-30 07:50  
431
그누보드   7375  2021-06-11 09:19 ~ 2021-06-11 09:20  
430
그누보드   6267  2021-06-03 16:20 ~ 2021-06-06 14:56  
429
그누보드   5645  2021-05-26 11:53 ~ 2021-05-27 08:49  
428
그누보드   7958  2021-05-18 13:48 ~ 2021-07-22 12:24  
427
그누보드   5382  2021-04-21 17:55 ~ 2021-06-15 18:19  
426
그누보드   4613  2021-02-25 22:28 ~ 2021-03-17 11:33  
열람
그누보드   6135  2021-02-18 10:28 ~ 2021-02-18 14:10  
424
그누보드   6538  2021-02-08 14:43 ~ 2021-02-08 16:31  
423
그누보드   7680  2020-12-14 18:09 ~ 2023-04-04 11:18  
422
그누보드   6410  2020-12-07 15:15 ~ 2022-12-17 21:15  
421
그누보드   4596  2020-10-19 06:39 ~ 2022-02-01 09:57  
420
그누보드   4379  2020-10-16 17:08 ~ 2020-10-20 00:43  
419
그누보드   4945  2020-10-14 12:34 ~ 2021-03-23 18:09  

검색

해피정닷컴 정보

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

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.