[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,641건 1 페이지
  • RSS
기술자료 목록
2641
그누보드   250  2024-11-26 21:14 ~ 2024-11-26 21:22  
2640
그누보드   286  2024-11-22 10:52 ~ 2024-11-22 11:03  
2639
호스팅   283  2024-11-19 14:41 ~ 2024-11-19 21:17  
2638
Linux   222  2024-11-18 15:45 ~ 2024-11-18 15:48  
2637
일반   212  2024-11-15 16:45 ~ 2024-11-15 16:46  
2636
Secure   245  2024-11-06 18:48 ~ 2024-11-06 18:50  
2635
영카트   407  2024-10-21 13:44 ~ 2024-10-21 19:42  
2634
전자결제   857  2024-09-05 09:30  
2633
MySQL   1067  2024-03-29 14:14 ~ 2024-03-29 14:14  
2632
그누보드   1305  2024-02-23 18:40 ~ 2024-02-24 06:13  
2631
JavaScript   1400  2024-02-16 18:50 ~ 2024-02-16 20:37  
2630
Java   1364  2024-02-06 16:49  
2629
PHP   1562  2024-02-06 16:42  
2628
호스팅   1482  2024-01-29 12:54  
2627
PHP   1419  2024-01-26 11:04 ~ 2024-01-26 11:13  
2626
MySQL   1582  2024-01-08 17:37 ~ 2024-03-14 16:00  
2625
SQL   1774  2024-01-08 12:36  
2624
영카트   1817  2024-01-04 14:57  
2623
일반   2668  2023-12-15 18:33  
2622
Android   2146  2023-11-30 18:48 ~ 2023-11-30 19:41  

검색

해피정닷컴 정보

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

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