Kijin Sung
19331e6746
Additional XSS checks #1088
2018-09-18 13:27:55 +09:00
Kijin Sung
e03ccbd7a9
Also filter XML and HTML file uploads
...
- Detect possible XML (including SVG) by actual content, not extension
- Check large files in overlapping chunks to reduce memory usage
- Check XML files for external entities
- Check HTML files for SSI and PHP code
2018-09-18 02:45:48 +09:00
Kijin Sung
60d390f52e
Initial mitigations for #1088 #1089
2018-09-17 00:48:47 +09:00
conory
6d081b9fec
XML쿼리에서 CAST(regdate as DATE) 와 같은 함수 사용시 발생하는 오류 수정
...
datatype도 escape되는 바람에 발생된 문제로, 우선 대문자에 한하여 escape 되지 않도록 수정하였습니다.
주석에 떡하니 된다고 해놓고 실제로는...
2018-09-15 00:58:50 +09:00
Kijin Sung
9b6e88bc33
Add try...catch to trigger functions
2018-09-06 19:44:25 +09:00
Kijin Sung
b048200a30
Allow multiple selection of display debug types
2018-09-06 17:00:50 +09:00
Kijin Sung
4d5401ef89
Merge branch 'develop' into pr/exception
2018-09-06 10:45:59 +09:00
Kijin Sung
10c8d11785
Add FeatureDisabled and SecurityViolation exception classes
2018-09-06 10:00:47 +09:00
Kijin Sung
5b7ce90a3d
Also catch exceptions in init() method of module instances
2018-09-06 00:19:27 +09:00
Kijin Sung
74b07cb5c4
Remove unnecessary parentheses in MySQL error handler
2018-09-03 15:48:02 +09:00
Kijin Sung
f6fa7493f6
Catch Rhymix\Framework\Exception in module act and triggers
2018-08-26 23:46:13 +09:00
conory
9e59a6d839
페이지 편집 페이지에서 '모듈 설정 화면' 설정과는 상관없이 무조건 사용자 레이아웃 적용
...
레이아웃마다 너비가 모두 다르므로 관리자 레이아웃 적용시 정확도가 엄청 떨어짐
2018-08-14 15:20:00 +09:00
Kijin Sung
6f447df66c
Add option to view module config screen in admin layout
...
모듈 설정 화면을 관리자 레이아웃으로 보는 기능을 옵션으로 만들어 복원함
최근 수정된 관리자 레이아웃 디자인을 여기에도 적용
2018-08-14 12:41:30 +09:00
Kijin Sung
4ca3bdccc6
Display module settings in own layout
...
Partially revert 8d718c0
2018-08-14 11:11:58 +09:00
conory
8d718c0ae8
mid=board&act=dispBoardAdminBoardInfo등 모듈 관리자페이지에서 디자인이 깨지는 문제 수정
2018-08-08 11:56:46 +09:00
Kijin Sung
9e08bd40ac
Merge pull request #1053 from rhymix/pr/css-unload-minimal
...
.btn 및 .message 클래스의 CSS 속성을 제거하는 옵션 제공 #950
2018-08-06 16:39:48 +09:00
Kijin Sung
a49f2f5f06
Change Context::isAlwaysSSL() to config('session.use_ssl_cookies')
...
- Main session cookie is httpOnly if use_ssl is true
- SSO cookie is always httpOnly
2018-08-06 01:23:22 +09:00
Kijin Sung
2c9bb88a14
Merge branch 'develop' into pr/1051
2018-08-06 01:08:51 +09:00
Kijin Sung
637e4f9e46
Move admin layout assets to admin layout template files
...
@conory
2018-08-05 19:19:30 +09:00
Kijin Sung
c176be9c9f
Add an option to disable XE styles for .btn and .message
...
To disable XE styles for .btn, .btn-group, and .btnArea:
define('DISABLE_XE_BTN_STYLES', true);
To disable XE styles for .message:
define('DISABLE_XE_MSG_STYLES', true);
This is a limited version of XE's __DISABLE_DEFAULT_CSS__ constant.
Other styles and default CSS/JS resources are not affected.
DO NOT UNLOAD DEFAULT CSS/JS RESOURCES.
2018-08-04 23:20:45 +09:00
Kijin Sung
a489012d6d
Remove unnecessary mobile.css
...
해당 파일의 내용은 rhymix.less와 100% 중복되므로 별도 로딩할 필요가 없음
2018-08-04 23:18:29 +09:00
Kijin Sung
f8c42cc10b
Fix #1049 disappearing zero values in extravar
2018-08-04 21:08:03 +09:00
Kijin Sung
8db2ac16c7
Revert "basic files의 로드를 막을 수 있도록 Context::unloadBasicFiles() 추가"
...
This reverts commit 35b73eec0b .
2018-08-04 20:56:41 +09:00
Kijin Sung
867d6930cf
Revert " 35b73eec0b 보완"
...
This reverts commit 30e0a5c583 .
2018-08-04 20:56:34 +09:00
Kijin Sung
f12cf74dda
Revert "다른 프레임워크와 css 충돌을 피하기 위해 rhymix.less의 class/id 이름에 prefix 처리"
...
This reverts commit b1cb1f3f34 .
2018-08-04 20:56:24 +09:00
conory
b1cb1f3f34
다른 프레임워크와 css 충돌을 피하기 위해 rhymix.less의 class/id 이름에 prefix 처리
...
변경전의 xe.less 파일도 rhymix.less와 함께 load 하여 호환정 유지
CSS 충돌 예)
bootstrap의 .btn
사용 예)
bootstrap 사용시엔 {Context::unloadBasicFiles('xe')}으로 unload 시키면 문제없음
2018-08-03 19:45:30 +09:00
conory
30e0a5c583
35b73eec0b 보완
...
파일이름으로 unload 할 수 없도록 변경 (호환성 파괴 위험성이 크므로)
2018-08-03 12:32:42 +09:00
Min-Soo Kim
25d2e4892a
Revert "Example of the cookie option"
...
This reverts commit 93a35c251b .
2018-08-02 00:35:52 +09:00
Min-Soo Kim
93a35c251b
Example of the cookie option
2018-08-02 00:35:27 +09:00
Min-Soo Kim
30fd0c428c
Improve cookie security; Secure flag
...
SSL 항상 사용 옵션인 경우 쿠키도 이에 맞추어 SSL 인 경우에만 사용되도록 secure flag 를 추가합니다.
선택적 SSL 인 경우 SSL 이 적용되지 않은 구간에서도 쿠키를 읽을 수 있어야 하므로, 적용하지 않습니다.
이 PR 로 변경되는 내용
- Context 클래스에 checkSslEnforce 메소드 추가
- SSL 항상 사용 옵션일 경우, 가능한 secure 플래그를 달아서 쿠기 굽기
- SSO 쿠키의 경우 javascript 접근이 필요 없을 것으로 예상 ( https://github.com/rhymix/rhymix/pull/1034 ) 되어서 `httpOnly` 플래그도 추가.
안드로이드 웹뷰의 경우 StackOverFlow 의 Reading secure cookies in android WebView 라는 글을 참고하면, 읽어오는 것이 가능하다고 합니다. 주소에 프로토콜을 적지 않을 경우 secure flag 가 달린 쿠키는 정상적으로 읽어오지 않는 듯 하니 안드로이드 웹뷰를 사용하시는 분들은 대응이 필요할 것으로 보입니다.
https: //github.com/rhymix/rhymix/pull/1034 를 실수로 merge 하여서 다시 올립니다.
Co-Authored-By: Kijin Sung <kijin@kijinsung.com>
2018-07-29 12:15:24 +09:00
Min-Soo Kim
b62a1322c9
Revert "Merge branch 'develop' into develop"
...
This reverts commit ec54bbd415 , reversing
changes made to 9b12e0a71c .
2018-07-29 11:54:14 +09:00
Min-Soo Kim
ec54bbd415
Merge branch 'develop' into develop
2018-07-29 11:49:27 +09:00
Kijin Sung
71bee10ae9
Support data types not defined in XE
2018-07-05 23:46:21 +09:00
Kijin Sung
32c9de472a
Improve addColumn() and modifyColumn()
...
- 특정 컬럼 이후에 컬럼을 추가할 수 있도록 허용
- 모든 integer 타입의 size 속성을 무시 (tinyint 제외)
2018-07-05 22:43:53 +09:00
conory
35b73eec0b
basic files의 로드를 막을 수 있도록 Context::unloadBasicFiles() 추가
...
예) Context::unloadBasicFiles('admin' , 'rhymix.less', ...);
2018-07-05 16:45:55 +09:00
Kijin Sung
20fa55a3fc
Support HAVING in XML queries
...
GROUP BY에 사용되는 <groups> 태그 안에 <having> 태그를 넣을 수 있습니다.
문법은 <conditions> 부분에 적용되는 것과 같습니다.
<query id="queryId" action="select">
...
<groups>
<group column="document_srl" />
<having>
<condition operation="more" column="document_srl" var="myvar" default="0" />
</having>
</groups>
...
</query>
결과: SELECT ... GROUP BY document_srl HAVING document_srl >= 0
2018-07-03 15:40:52 +09:00
Kijin Sung
2b5cded376
Remove commented debug code
2018-07-02 16:41:13 +09:00
Kijin Sung
3359431d08
Allow nested condition groups
...
XML 쿼리에서 <conditions><group> 안에 <group> 태그를 또 쓸 수 있도록 허용함.
이제 WHERE (a AND (b OR (c AND d))) 이런 조건을 작성할 수 있음.
2018-06-30 23:01:55 +09:00
Kijin Sung
2cfb7585af
Convert more SQL keywords to uppercase
2018-06-30 23:00:28 +09:00
Kijin Sung
3aaa0c60b2
Add sensible operation names to XML query syntax
...
XML 쿼리 문법에서 사용되는 operation 이름을 상식적으로 개선함
차이점을 이해하기 어려운 excess/more, below/less 조건을 다른 프레임워크에서
흔히 사용하는 gt (greater than), gte (greater than or equal to),
lt (less than), lte (less than or equal to) 라는 이름으로도 쓸 수 있도록 함.
실제 부등호는 XML 태그에 사용되므로 아직은 사용 불가...
not_in은 있는데 not_equal, not_null, not_like는 없는 문제를 개선함.
이제 위의 4가지 모두 언더바(_)를 넣든 안 넣든 동일한 의미로 쓸 수 있음.
2018-06-30 16:01:44 +09:00
Kijin Sung
efa1b603c4
Condition pipe defaults to AND
...
XML 쿼리 작성시 pipe="and"를 일일이 추가하지 않아도 기본값이 AND가 되도록 함
2018-06-30 15:55:06 +09:00
Kijin Sung
83362034cd
Convert all SQL keywords to upper case
...
대소문자를 섞어서 쓰고 있던 SQL 키워드들을 모두 대문자로 통일
as, and, or, like, desc 등이 소문자였음
2018-06-30 15:42:52 +09:00
Kijin Sung
6070707941
Remove index hint classes for MS SQL and Cubrid
2018-06-30 15:31:00 +09:00
Kijin Sung
f00ba6f272
Remove and disable all other DB classes
2018-06-30 15:13:22 +09:00
Kijin Sung
0e4eec6a3f
Merge all MySQL DB classes into DBMysql.class.php
2018-06-30 15:12:59 +09:00
conory
bacca5d025
getActionForward() 에서 값이 없을 경우 빈 리턴을 하도록 개선
...
rss 모듈의 action forward가 등록되지 않는 문제 수정 (기존 서드파티에도 같은 문제가 발생될 것 같아 이렇게 수정함)
2018-06-21 16:13:03 +09:00
Kijin Sung
bb6dc77acd
투명한 배경의 PNG 파일은 썸네일 생성시에도 투명하게 나오도록 변경
...
xpressengine/xe-core#2243
2018-06-11 23:40:33 +09:00
Min-Soo Kim
f8edfacde2
Refine secure cookie flag
...
_use_ssl 대신 site_module_info 를 직접 참조하도록 수정.
함수 이름을 조금 더 자연스럽게 수정.
2018-04-28 11:25:15 +09:00
Min-Soo Kim
da95eed96e
Fix typo; Context class
...
오타 수정. 문장 끝 세미콜론 추가
2018-04-24 20:20:50 +09:00
Min-Soo Kim
c1c9a94623
Improve cookie security; Secure flag
...
SSL 항상 사용 옵션인 경우 쿠키도 이에 맞추어 SSL 인 경우에만 사용되도록 `secure` flag 를 추가합니다.
선택적 SSL 인 경우 SSL 이 적용되지 않은 구간에서도 쿠키를 읽을 수 있어야 하므로, 적용하지 않습니다.
2018-04-24 19:30:38 +09:00