Commit Graph
59 Commits
Author SHA1 Message Date
thisgun 31ef78e916 [perf]strstr() 불린 검사를 strpos() !== false 로 교체
strstr()은 일치하는 부분 문자열 전체를 반환하므로 존재 여부만 체크할
때는 메모리 할당이 낭비됨. strpos()는 위치(int) 또는 false만 반환하여
메모리 할당 없이 더 빠르게 동일 동작 수행.

적용 파일 (19개, 약 25곳):
- lib/common.lib.php: wr_option html1/html2/secret 검사 3곳
- lib/shop.lib.php: de_taxsave_types 검사 2곳
- lib/latest.lib.php: wr_option secret 검사 1곳
- lib/thumbnail.lib.php: wr_option secret 검사 1곳
- lib/URI/uri.class.php: URI 확장자 검사 1곳
- bbs/view.php: subject/wr_option/content 검사 4곳
- bbs/view_comment.php: wr_option secret 검사 1곳
- bbs/search.php: wr_option/sfl 검사 3곳
- bbs/rss.php: wr_option html 검사 1곳
- bbs/write_update.php: html1/html2 검사 2곳
- bbs/move_update.php: wr_option html 검사 1곳
- adm/admin.lib.php: auth 권한 검사 1곳
- adm/admin.head.php: 메뉴 권한 검사 1곳
- adm/session_file_delete.php: sess_ prefix 검사 1곳
- adm/point_list.php, adm/auth_list.php: sfl mb_id 검사 2곳
- adm/sms_admin/_common.php: install.php 검사 1곳
- adm/shop_admin/configform.php: de_taxsave_types 검사 3곳
- head.sub.php: admin dir 검사 1곳

규칙:
  strstr($a, $b)       → strpos($a, $b) !== false
  !strstr($a, $b)      → strpos($a, $b) === false

제외:
- theme/, skin/, plugin/ (사용자 커스터마이징/서드파티)
- strstr() 반환값을 실제로 사용하는 케이스 (예: lib/common.lib.php:4135
  if( \$freg = strstr(\$ori_params, '#') ), extend/gif2mp4.extend.php)
2026-04-16 02:29:32 +00:00
thisgun a612e69d3e [perf]for 루프 조건의 count() 호출을 루프 밖으로 추출 (핵심 파일)
for ($i=0; $i<count(\$arr); $i++) 패턴은 매 반복마다 count()를 호출하여
불필요한 CPU 오버헤드를 발생시킴. 루프 전에 한 번만 count()를 계산하여
변수에 저장하는 고전적인 최적화.

적용 파일 (19개, 41곳):
- lib/common.lib.php (8)
- common.php (2)
- lib/shop.lib.php (5)
- lib/naverpay.lib.php (1)
- lib/thumbnail.lib.php (2)
- bbs/list.php (1), bbs/search.php (4), bbs/qalist.php (1), bbs/qawrite.php (1)
- bbs/ajax.filter.php (1), bbs/write_update.php (4)
- bbs/write_comment_update.php (1), bbs/memo_form_update.php (2)
- bbs/new_delete.php (1), bbs/move_update.php (4)
- shop/search.php (1), shop/orderform.sub.php (1)
- mobile/shop/search.php (1), mobile/shop/orderform.sub.php (1)

부수 효과:
- lib/shop.lib.php line 2115: 동일 루프 내 strstr($dlcomp, $company)를
  strpos($dlcomp, $company) !== false 로 변경 (strstr 최적화의 일부)

제외:
- theme/, skin/, plugin/ (사용자 커스터마이징/서드파티)
- lib/PHPExcel/ (서드파티 라이브러리)
- adm/ 및 shop/mail/ (관리자/드문 경로, 별도 후속 작업 여지)
- 주석 처리된 코드 (bbs/delete.php:127, bbs/delete_all.php:143)
2026-04-16 02:26:59 +00:00
thisgun ad99ea7673 [KVE-2026-0599]그누보드5 XSS 취약점 수정 2026-04-06 06:27:09 +00:00
thisgun 60d37b853b [KVE-2026-0553]그누보드 SQL Injection 취약점 수정 2026-03-30 09:50:38 +00:00
chym1217 7e8eff5395 팝빌 알림톡 제거 완료
- 광고성 및 회원관리파일(친구톡 코드만 제거) 제외
2025-09-19 17:53:50 +09:00
chym1217 66f6a75a10 팝빌 알림톡 기능 추가 2025-09-04 12:37:12 +09:00
thisgun 62ff45b31f php warning 메시지 코드 수정 2025-03-31 15:36:32 +09:00
thisgun 8893b112fa 일부 특수문자가 mysql charset 이 uft8 인 경우 기록이 안되는 현상 수정 2024-11-21 11:58:55 +09:00
thisgun bf6678e036 글쓰기 sql query 에 별칭 as 추가 #309 2024-04-03 09:44:37 +09:00
thisgun 16051b3049 비회원이 비밀글을 작성할 경우 패스워드를 묻는 오류 문제 수정 2023-11-10 12:47:10 +09:00
kkigomi 8cd1df0f43 불필요한 주석 제거 2023-08-31 21:18:41 +09:00
thisgun 41d48891f4 wr_num 필드 값이 동시성 문제로 겹치는 경우 답변글에 대한 권한이 잘못 주어지는 등의 문제 다시 수정 #265 2023-08-17 14:39:05 +09:00
thisgun 876534a440 wr_num 필드 값이 동시성 문제로 겹치는 경우 답변글에 대한 권한이 잘못 주어지는 등의 문제 #265 2023-08-16 13:01:05 +09:00
thisgun 238f8c042c 불필요한 코드 수정 및 불필요한 파일 삭제 2022-05-25 19:44:00 +09:00
kagla 13bc72def7 ip2long으로 변환된 REMOTE_ADDR을 유추할수 없도록 md5(sha1(REMOTE_ADDR))로 처리함 (kjsman님,220418) 2022-04-18 11:47:22 +09:00
kagla d79c3be7ba SQL 구문 오류 해결 2022-03-16 16:07:13 +09:00
kagla 6dc462d784 (KVE-2021-0849) 확장자 .phar 파일 업로드 취약점 수정 2021-10-15 16:04:17 +09:00
kagla 7dea8e6866 PHP8 에서 발생하는 오류 수정 2021-09-15 01:14:45 +00:00
kagla 178886c87a webp 이미지를 업로드 할 수 있도록 수정 중 2021-06-22 16:07:02 +09:00
thisgun 27e9af5e42 php8.0 버전 호환 코드 적용 및 PHP 끝 태그 삭제 일괄적용 2021-01-04 15:39:15 +09:00
thisgun 426e4e2819 PHP Warning count 경고문 코드 수정 및 기타 코드 수정 2020-06-04 17:21:40 +09:00
thisgun e221783c20 잘못된 표기 또는 문법 수정 2020-04-17 13:48:55 +09:00
thisgun 22aad37bfb 5.4 버전 내용 적용 2019-12-02 10:22:12 +09:00
thisgun f7ac06d7d4 5.3 버전 내용 적용 2018-03-30 17:40:37 +09:00
thisgun 52f6b39edc 공지가 풀리는 경우 코드 오류 수정 및 메모 카운트 코드 오류 수정 2018-03-20 15:56:24 +09:00
thisgun 06ad4e534a 그누보드 영카트 다중 취약점(17-1029, 17-1047) 수정 2018-03-13 16:11:52 +09:00
thisgun 9e8f75e8fa 회원이 쓴 공지글을 수정할 경우 공지가 풀리는 오류 수정 2018-02-26 09:04:15 +09:00
thisgun 66358414f2 pht 파일 업로드 취약점 수정 adm1nkyj(김용진, http://adm1nkyj.kr) 님 제보 2017-12-08 11:27:37 +09:00
thisgun 5ba87d9933 글쓰기시 page 중복 소스 삭제 2017-01-18 10:56:01 +09:00
chicpro b69720836b 게시글 CSRF 취약점(16-749 16-750) 수정 2016-10-05 10:34:07 +09:00
chicpro b4a83c1969 게시글 카테고리 체크 수정 2016-05-03 17:31:10 +09:00
chicpro ee35ce9839 파일 업로드 개수 체크 추가 2016-05-03 16:53:52 +09:00
chicpro 3f7068541f 비밀글 등록 버그 수정 2016-04-26 17:56:14 +09:00
chicpro 5111f026e6 게시글 등록 메일 이미지 출력 오류 수정 2016-01-06 09:05:07 +09:00
chicpro 35c2bac898 분류 사용할 때 분류선택 여부 체크 추가 2015-12-14 11:06:14 +09:00
chicpro 7324ab1060 업로드 파일명 코드 변경 2015-11-10 14:26:17 +09:00
chicpro f1c56fe70c MySQLi 지원 추가 2015-10-12 14:12:45 +09:00
chicpro b6d84674f6 비밀번호 체크관련 코드 수정 2015-05-13 16:39:13 +09:00
chicpro fcf518353c wr_link를 이용한 sql injection 대응 코드 추가 2014-10-28 10:15:44 +09:00
chicpro 9ef65f3f25 경고 알림 후 이동 경로 추가 2014-10-27 15:31:25 +09:00
chicpro 78fa0cb41b 파일 업로드 보안 오류 수정 2014-10-27 10:43:46 +09:00
chicpro 4ae4cc2169 wr_link 값에 substr 적용 무시되는 오류 수정 2014-10-27 10:00:15 +09:00
chicpro 50c42776e7 SQL Injection 및 관리자가 게시글 수정때 정보 반영되도록 수정 2014-10-24 11:01:34 +09:00
chicpro 36e6d53374 회원 홈페이지를 이용한 SQL Injection 오류 수정 2014-10-23 09:21:59 +09:00
chicpro 12f9a05106 XSS 및 SQL Injection 오류 수정 2014-10-17 11:15:36 +09:00
chicpro 4d115fd895 XSS 및 SQL Injection 취약점 수정 2014-07-31 15:48:34 +09:00
chicpro 52dbc4b6e7 bo_notice 필드에 필요치않는 콤마 추가되는 문제 수정 2014-07-21 09:53:46 +09:00
chicpro 414b954b92 글제목 문자열 자르기 오류를 이용한 sql injection 방지 2014-07-18 09:36:57 +09:00
SIR 51527db42e 오타 bO_read_level 을 bo_read_level 로 수정 2014-07-10 09:35:13 +09:00
SIR 697c4b851f 네이버 신디케이션 핑 적용 2014-07-03 13:56:49 +09:00