갑자기 사이트에 스팸글이 올라와서..... > 자유게시판

자유게시판

갑자기 사이트에 스팸글이 올라와서..... 정보

갑자기 사이트에 스팸글이 올라와서.....

본문

오늘 갑자기 제사이트에 가입해서 스팸글을 무지하게

올리는 분이 계셔서 약이올라 회원삭제하면 같이 스팸글도 삭제 되도록 해보았습니다.....^^

 

로빈아빠님 팁이 좋아보여 사용해 보려 했는데 작동이 안되어서

https://sir.kr/g5_tip/1954

 

JS빌더에서 사용하던 소스와 님께서 올려주신 팁을 조합해서 적용했더니 다행이 잘 되네요....ㅎㅎ

https://sir.kr/g5_tip/7499

 

코어를 건들여야 하기 때문에 님 팁을 쓰고 싶은데 어떻게 수정을 해주실려나 모르겠네요....^^

 

좀 더 extend 폴더에 넣어서 해결하는 방법을 찾아 보아야 겠습니다.

 

extend 폴더에 넣어서 해결 하려고 작업하다 게시물 다 날리고 백업파일로 복구 했네요......ㅠㅠ

 

추천
0

댓글 35개

이럴때에는 만들어 놓으신 m3cron 이용하시는게 좋을듯 합니다,

저도 아침에 적용 해놓았네요 ㅜㅜ


<?
$mdname = array('0oktu1', 'kf1229love','mmr1234','qmffor85g','9g7g3p','magickh7','bedael','ejrtjsl88','test9940','skdo15778','kimmy','blz003');//스팸아이디 추가
foreach($mdname as $name) {
$mdname = $name;
$query = sql_query("select bo_table from `$g5[board_table]`");
while($row = sql_fetch_array($query)) {
  sql_query("delete from `$g5[write_prefix]$row[bo_table]` where mb_id='$mdname'");
  sql_query("delete from `$g5[new_win_table]$row[bo_table]` where mb_id='$mdname'");
    $sql = " select count(*) as cnt from ".$g5['write_prefix'].$row[bo_table]." where wr_is_comment = 0 ";
    $row = sql_fetch($sql);
    $bo_count_write = $row['cnt'];
 
    $sql = " select count(*) as cnt from ".$g5['write_prefix'].$row[bo_table]." where wr_is_comment = 1 ";
    $row = sql_fetch($sql);
    $bo_count_comment = $row['cnt']; 
 
    if (isset($_POST['proc_count'])) {
        // 원글을 얻습니다.
        //$sql = " select wr_id from {$g5['write_prefix']}{$row[bo_table]} where wr_is_comment = 0 ";
        $sql = " select a.wr_id, (count(b.wr_parent) - 1) as cnt from ".$g5['write_prefix'].$row[bo_table]." a, ".$g5['write_prefix'].$row[bo_table]." b where a.wr_id=b.wr_parent and a.wr_is_comment=0 group by a.wr_id ";
        $result = sql_query($sql);
        for ($i=0; $row=sql_fetch_array($result); $i++) {
            /*
            // 코멘트수를 얻습니다.
            $sql2 = " select count(*) as cnt from {$g5['write_prefix']}$row[bo_table] where wr_parent = '{$row['wr_id']}' and wr_is_comment = 1 ";
            $row2 = sql_fetch($sql2);
            */
           
            sql_query(" update ".$g5['write_prefix'].$row[bo_table]." set wr_comment = '".$row['cnt']."' where wr_id = '".$row['wr_id']."' ");
        }
    }
   
    // 공지사항에는 등록되어 있지만 실제 존재하지 않는 글 아이디는 삭제합니다.
    $bo_notice = "";
    $lf = "";
    if ($board['bo_notice']) {
        $tmp_array = explode(",", $board['bo_notice']);
        for ($i=0; $i<count($tmp_array); $i++) {
            $tmp_wr_id = trim($tmp_array[$i]);
            $row = sql_fetch(" select count(*) as cnt from ".$g5['write_prefix'].$row[bo_table]." where wr_id = '".$tmp_wr_id."' ");
            if ($row['cnt']) {
                $bo_notice .= $lf . $tmp_wr_id;
                $lf = ",";
            }
        }
    }
   
    $sql = " update ".$g5['board_table']."
    set bo_notice = '".$bo_notice."',
    bo_count_write = '".$bo_count_write."',
    bo_count_comment = '".$bo_count_comment."'
    where bo_table = '".$row[bo_table]."' "; 
  sql_query($sql);
 }
}
?>
회원삭제와 동시에 모든게시물도 한번에 날리려구요....^^
common.lib.php 에서 해결 했습니다만, 코어쪽 안걸들여 볼까하고 extend 에 파일 넣어보려구요.
  그렇지 않아도 메시지 보고 확인중에 있는데 문제는 값자기 토큰에러가 나서 그쪽으로 보고 이습니다.^^ 그것부터고치고 확인해보겠습니다.
회원정보 삭제만 처리한  루틴은 다음과 같습니다. (변수명 기입방법 정리)

<?php
// 제목 : extend에 넣는 회원정보 삭제 
// 작성 : 로빈아빠 2018-03-02 
// 파일명 extend/_ar.delete_member.php
// 주요기능 : 회원관리자에서 삭제된 회원을 완전히 삭제함..


if ($is_admin=='super' && strstr($PHP_SELF,"/member_list_delete.php") && isset($chk) && count($chk) &&!$g5['proc_member_list_delete'] ) {
	echo __LINE__;exit;
	$is_delete=false;
	$g5['proc_member_list_delete']=true;
	$achk=array();
	for ($i=0; $i<count($chk); $i++) 
	{
		// 실제 번호를 넘김
		$k = $_POST['chk'][$i];
		$mb = get_member($_POST['mb_id'][$k]);
		if ($mb['mb_level']<=1 && !$mb['mb_password']) {
			$sql2="delete from {$g5['member_table']} where mb_id='{$mb['mb_id']}'";
			sql_query($sql2);
			$is_delete=true;
		}
		else {
			$achk[]=$k;
		}
	}
	if ($is_delete) {
		$chk=$achk;
	}
}

?>
좋은 자료 감사 합니다  아이디삭제시 제가입 하여 다시 도배를 하는데... 회원정보삭제및 ip차단도 첨부하면 괜찮을듯 보입니다,
확인해보니 member_list_delete.php -> member_list_update.php  로 파일명이 변경되었군요..^^
새 루틴을 올리도록 하겠습니다. ^^
저번에 기본적인 jquery는 만들어 둔게 있는데 고도화 하면 친구가능과 스팸삭제 및 차단이 가능은 할겁니다 ^^*
님 코드 대신에 이거 쓰니 한방에 해결 되는구만요.....ㅎㅎ

sql_query(" delete from ".$g5['write_prefix'].$row['bo_table']." where mb_id='$mb_id'");
저게 아이디를 계속 돌아가면서 쓰더라구요..
ajax필터링은 피하는것 같아서

내용 소스보고.. 단어 추출해서 write_update에서 특정 단어 들어가면 튕겨버립니다..
그러니까 코멘트로 남기길래 코멘트에도 추가하니 조용하네요 :)
회원가입시 이메인 사용으로 체크 하니 일단 조용하네요.
아마도 자동으로 글쓰는 로봇은 아닌것 같고 회원가입후 직접 작성하는것 같습니다.
회원삭제와 모든 게시글 및 댓글 삭제 한방에 해결하니 시원 하네요....^^
전체 199,644 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT