테스트 사이트 - 개발 중인 베타 버전입니다

mysql 버젼업에 따른 패스워드 문제 채택완료

테돌아이 8년 전 조회 2,414

원본

http://sir.kr/g4_tiptech/21757">http://sir.kr/g4_tiptech/21757

 

 

원본 - line 26~28

-----------------------------------------

if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {

    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");

}

-----------------------------------------

 

=>

 

수정본

-----------------------------------------

if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password] and sql_old_password($mb_password) != $mb[mb_password])) {

    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");

} else {

    if (sql_old_password($mb_password) == $mb[mb_password]) {

        $sql_password = " mb_password = '".sql_password($mb_password)."' ";

        $sql = " update {$g4[member_table]}

                    set $sql_password 

                  where mb_id = '$mb[mb_id]' ";

        sql_query($sql);

    }

}

 

이렇게 변경을 하면 된다고 하는데

그누보드5는

if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) { 

위 부분처럼 되어 있지가 않네요.

어떻게 수정을 하면될까요?

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
8년 전
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

테돌아이
8년 전
링크대로 수정을 했는데 안되네요. ㅠㅠ

서버 버전: 5.0.67-log
이렇게 되어 있습니다.
이곳에 그누보드5 설치를 했는데 회원정보 팩스워드를 보면
다음과 같습니다.
7a5efc50383f56fb

그런데 오랜전에 패스워드 부분은
*89C6B530AA78695E257E55D63C00A6EC9AD3E977

이렇게 되어 있습니다.

후자가 41bytes 처리된것 아닌가요?

댓글을 작성하려면 로그인이 필요합니다.

사바이캅

/common.lib.php 파일의 

 

sql_password 함수에서

 

</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">function sql_password($value)</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">{</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">    // mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">    // mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">    $row = sql_fetch(" select old_password('$value') as pass ");</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">    return $row['pass'];</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">}</span></font></p><p><font color="#505050" face="돋움, Dotum, sans-serif"><span style="font-size: 14.004px;">

로 수정하시면 될듯..

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

테돌아이
8년 전
동일하게 수정을 해도 안되네요.

lib/common.lib.php 파일이 맞지요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인