<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
	<channel>
				<title><![CDATA[사용자 비밀번호 변경 유효성 검사 오류]]></title>
		<link>https://www.cosmosfarm.com/threads/rss/document/64481</link>
		<description><![CDATA[<p>1. 정확한 제품 또는 플러그인 이름</p>

<p>코스모스팜 회원관리 플러그인 3.4</p>

<p> </p>

<p>2. 상세 내용</p>

<p>[재현 방법]</p>

<p>로그인 성공 &gt; 비밀번호 변경 페이지 이동 &gt; 브라우저에서 <strong>javascript 비활성화</strong> &gt;  <strong>약한 비밀번호 입력</strong>(1234) &gt; 비밀번호 변경 &gt; 변경이 완료됩니다.</p>

<p><a href="https://imgur.com/9EUgJiH">https://imgur.com/9EUgJiH</a></p>

<p> </p>

<p>강한 비밀번호를 사용하도록 관리자 페이지에서 설정을 해주었음에도</p>

<p>클라이언트단에서만 유효성검사를 진행하기 때문에, 약한 비밀번호으로도 변경이 가능해지는것 같습니다.</p>

<p>확인 부탁드립니다.</p>

<p>혹시 다음 버전까지 기다려야 하는 상황이라면,</p>

<p>적용 가능한 서버쪽 코드를 안내해주시면 감사하겠습니다.</p>

<p> </p>

<p>3. 확인 가능한 상세 페이지 주소</p>

<p> </p>

<p> </p>

<p>4. 수정한 코드 내역 (있다면)</p>

<p> </p>

<p> </p>]]></description>
		<copyright>Copyright 2026, 코스모스팜</copyright>
				<item>
			<title><![CDATA[설명 및 코드 제공 정말 감사드립니다! ]]></title>
			<link>https://www.cosmosfarm.com/threads/document/64505</link>
			<description><![CDATA[<p>설명 및 코드 제공 정말 감사드립니다! </p>]]></description>
			<author>윤병인</author>
			<pubDate>Fri, 12 May 2023 07:08:44 +0000</pubDate>
			<category>KBoard</category>
		</item>
				<item>
			<title><![CDATA[안녕하세요~^^

워드프레스는 서버단에서 강력한 비밀번호인지

확인하는 적절한 함수가 제공되고 있지 ...]]></title>
			<link>https://www.cosmosfarm.com/threads/document/64501</link>
			<description><![CDATA[<p>안녕하세요~^^</p>

<p>워드프레스는 서버단에서 강력한 비밀번호인지</p>

<p>확인하는 적절한 함수가 제공되고 있지 않습니다.</p>

<p> </p>

<p>코스모스팜 회원관리 플러그인은 wp-members 플러그인의 기능을</p>

<p>차용하여 기능을 제공하는데 wp-members 플러그인 내에도</p>

<p>서버단에서 강력한 비밀번호를 확인하는 기능은 따로 제공되고 있지 않습니다.</p>

<p> </p>

<p>특히 사용자 정보 업데이트 전에 실행되는 액션이 따로 없어</p>

<p>필터를 활용해야 하는데 이때 js가 실행되고 있지 않다면</p>

<p>적절한 알림 자체가 띄워지지 않습니다.</p>

<p> </p>

<p>아래의 코드를 활용하여 강력한 비밀번호가 아닐 때</p>

<p>비밀번호 변경을 방지할 수는 있습니다.</p>

<pre>
<code>add_filter('wpmem_pwd_change_error', function($is_error, $user_ID, $new_password){
	$option = get_cosmosfarm_members_option();
	if($option-&gt;use_strong_password){
		if(!preg_match('/[A-Za-z]/', $new_password) || !preg_match('/\d/', $new_password) || !preg_match('/[\W_]/', $new_password)){
			return true;
		}
	}
	
	return $is_error;
}, 10, 3);</code></pre>

<p> </p>

<p>더 좋은 방법이 있는지 연구 후</p>

<p>업데이트 가능하다면 다음 업데이트에 반영해보도록 하겠습니다.</p>

<p> </p>

<p>추가로 js를 일시정지하여 굳이 본인의 비밀번호를</p>

<p>억지로 약하게 만드는 행위를 하는 경우는 극히 드물 것으로 생각됩니다.</p>

<p>고맙습니다.</p>]]></description>
			<author>스레드봇</author>
			<pubDate>Fri, 12 May 2023 06:24:44 +0000</pubDate>
			<category>KBoard</category>
		</item>
			</channel>
</rss>