땀똔의 프로필 사진

티스토리, 매크로 댓글 차단하기

    Information/For Tistory

 

 

개요

 

 

  1. 매크로가 정확히 어떤식으로 작동하는지 몰라 완벽할 순 없겠으나 페이지 로딩 후
    일정시간 동안 댓글란을 잠그는 방법으로도 매크로 방어가 가능하다는 생각에서 시작되었음.
  2. 페이지 로드되고 30초 후에 댓글란이 활성화되며 버튼 클릭으로 활성화 가능.
  3. 티스토리의 댓글 전송하는 함수를 초기화해서 댓글이 등록되는 것을 방지함.
    - 이 부분을 정확히 알 수 없지만 아마도 그렇게 매크로가 돌아가는 것 같음.
  4. 더 지켜봐야 확실해지겠지만, 이틀간의 테스트 결과 위 1번의 내용으로도 효과가 있음.
  5. 스패머에게 주는 선물..은 아래 스크립트 확인.
  6. 티스토리 이느므 시키들아 일 좀 해라!

 

 

 

 

 

 

Demo & Code

 

 

 

[Demo] Tag Cloud Animation for TISTORY

HTML 삽입미리보기할 수 없는 소스     HTML 삽입미리보기할 수 없는 소스

dd-stuff.tistory.com

 

 

 

 

먼저, 스킨 댓글란의 Submit 버튼 태그를 수정하고 아래의 스크립트 적용.

 - ID 지정

 - onclick 치환자 삭제

 - Post 스킨 예시

 

<button type="submit" class="btn" onclick="[ ##_rp_onclick_submit_## ]">댓글달기</button>

<button id="commSubmit" type="submit" class="btn">댓글달기</button>

 

 

 

아래 스크립트를 resetComment.js 파일로 저장.

// 사용자 설정 시작

// 매크로 스패머에게 빅엿을 선사하고 싶으면 아래의 설정값을 1로 변경할 것.
const sfys = 0;

// 빅엿 - 아래의 주소로 아래의 숫자만큼 새탭을 열어줌.
const fys = 200;
const fysTarget = 'www.google.com';


// 사용자 설정 끝

function _0x4aa8(_0x4334c9,_0xd532ed){const _0x542f5e=_0x542f();return _0x4aa8=function(_0x4aa839,_0xdd364e){_0x4aa839=_0x4aa839-0xd8;let _0x2ac4da=_0x542f5e[_0x4aa839];return _0x2ac4da;},_0x4aa8(_0x4334c9,_0xd532ed);}function _0x542f(){const _0x1bb5a9=['783580xViDzz','250481UGKAJj','value','https://','div[id*=\x22entry\x22]\x20textarea','2175876mVdagC','786eunGlr','1769388zNlVmK','18820zKDGgG','8645568tPrdsL','querySelector','681606DtVFNd'];_0x542f=function(){return _0x1bb5a9;};return _0x542f();}(function(_0x29d4e1,_0x3f61ea){const _0x2ac9a1=_0x4aa8,_0x33730e=_0x29d4e1();while(!![]){try{const _0x7c320b=parseInt(_0x2ac9a1(0xe1))/0x1+parseInt(_0x2ac9a1(0xdf))/0x2+parseInt(_0x2ac9a1(0xd9))/0x3+-parseInt(_0x2ac9a1(0xdb))/0x4+-parseInt(_0x2ac9a1(0xdc))/0x5*(-parseInt(_0x2ac9a1(0xda))/0x6)+parseInt(_0x2ac9a1(0xe0))/0x7+-parseInt(_0x2ac9a1(0xdd))/0x8;if(_0x7c320b===_0x3f61ea)break;else _0x33730e['push'](_0x33730e['shift']());}catch(_0x2713b8){_0x33730e['push'](_0x33730e['shift']());}}}(_0x542f,0x614dd));function addComment(){const _0x3b67e1=_0x4aa8;document[_0x3b67e1(0xde)](_0x3b67e1(0xd8))[_0x3b67e1(0xe2)]='';if(sfys==0x1)for(let _0x38853e=0x0;_0x38853e<fys;_0x38853e++){window['open'](_0x3b67e1(0xe3)+fysTarget);}}

 

 

 

resetComment.js 파일을 업로드 후,

아래의 스크립트는 '스킨편집 - HTML'에서 </body> 태그 윗 라인에 <script></script> 태그를 만들고 태그 사이에 삽입.

// Comment Macro Protection
function _0x38c0(_0x2ab611,_0x8129ee){var _0x4d676a=_0x4d67();return _0x38c0=function(_0x38c04e,_0x307b7f){_0x38c04e=_0x38c04e-0x141;var _0x5e7a38=_0x4d676a[_0x38c04e];return _0x5e7a38;},_0x38c0(_0x2ab611,_0x8129ee);}var _0x209e9c=_0x38c0;(function(_0x13c413,_0x16f69f){var _0x38ef84=_0x38c0,_0x4f316a=_0x13c413();while(!![]){try{var _0x57a2c1=-parseInt(_0x38ef84(0x16e))/0x1+parseInt(_0x38ef84(0x185))/0x2+-parseInt(_0x38ef84(0x155))/0x3+parseInt(_0x38ef84(0x144))/0x4*(-parseInt(_0x38ef84(0x16a))/0x5)+-parseInt(_0x38ef84(0x15a))/0x6*(-parseInt(_0x38ef84(0x162))/0x7)+parseInt(_0x38ef84(0x174))/0x8+parseInt(_0x38ef84(0x142))/0x9*(parseInt(_0x38ef84(0x154))/0xa);if(_0x57a2c1===_0x16f69f)break;else _0x4f316a['push'](_0x4f316a['shift']());}catch(_0xbc8c0b){_0x4f316a['push'](_0x4f316a['shift']());}}}(_0x4d67,0xe6f84),window[_0x209e9c(0x14f)](_0x209e9c(0x184),()=>{var _0x4642a7=_0x209e9c;window['T'][_0x4642a7(0x194)]!=null&&setTimeout(()=>{var _0x562670=_0x4642a7;document[_0x562670(0x186)]('div[id*=\x22entry\x22]\x20textarea')[_0x562670(0x18f)](_0x562670(0x165),_0x562670(0x15f));let _0x909f3b=document['querySelector'](_0x562670(0x148))['cloneNode'](!![]);document['querySelector'](_0x562670(0x148))[_0x562670(0x160)]();let _0x1e7d80=document[_0x562670(0x18a)](_0x562670(0x181));_0x1e7d80[_0x562670(0x17b)]=_0x562670(0x167)+window['T']['config'][_0x562670(0x161)]['id']+_0x562670(0x182)+new Date()[_0x562670(0x193)]()+(new Date()['getMonth']()+0x1)+new Date()['getHours']()+new Date()['getMinutes']()+new Date()[_0x562670(0x150)]();let _0x53b5b5=document[_0x562670(0x16f)]('script')[0x0];_0x53b5b5[_0x562670(0x192)][_0x562670(0x175)](_0x1e7d80,_0x53b5b5);function _0x221b2b(_0x24c542,_0xa784ae){(function(_0x518bb0){var _0x561ef5=_0x38c0,_0x1c91b2=0x3e8,_0x5f0328=findFormObject(_0x24c542),_0x20eb34=_0x5f0328[_0x561ef5(0x186)](_0x561ef5(0x18d));if(!_0x5f0328)return![];var _0x294bab={'key':_0x561ef5(0x14e)},_0x31abbe=_0x518bb0(_0x561ef5(0x190));if(_0x31abbe[_0x561ef5(0x145)]>0x0){if(!_0x31abbe[_0x561ef5(0x158)]())return alert(_0x561ef5(0x177)),![];_0x294bab['captcha']=_0x31abbe[_0x561ef5(0x158)]();}_0x5f0328[_0x561ef5(0x149)]&&(_0x294bab['name']=_0x5f0328[_0x561ef5(0x149)]['value']);if(_0x5f0328['password']){var _0x285577=_0x5f0328['password']['value']['trim']();if(_0x285577['length']==0x0)return alert('비밀번호를\x20입력해\x20주세요.'),![];var _0x4d6e8d=new jsSHA('SHA-256','TEXT');_0x4d6e8d['update'](md5(encodeURIComponent(_0x285577))),_0x294bab[_0x561ef5(0x171)]=_0x4d6e8d[_0x561ef5(0x15e)]('HEX');}_0x5f0328[_0x561ef5(0x151)]&&(_0x294bab[_0x561ef5(0x151)]=_0x5f0328[_0x561ef5(0x151)][_0x561ef5(0x173)]);_0x5f0328[_0x561ef5(0x18c)]&&_0x5f0328[_0x561ef5(0x18c)][_0x561ef5(0x16d)]&&(_0x294bab[_0x561ef5(0x18c)]=0x1);_0x5f0328['comment']&&(_0x294bab[_0x561ef5(0x191)]=_0x5f0328[_0x561ef5(0x191)][_0x561ef5(0x173)]);if(typeof _0x294bab[_0x561ef5(0x191)]==='string'&&_0x294bab[_0x561ef5(0x191)][_0x561ef5(0x145)]>_0x1c91b2){alert(_0x561ef5(0x18e)+_0x1c91b2+'자까지\x20입력할\x20수\x20있습니다.'),_0x20eb34&&_0x20eb34['focus']();return;}if(_0x294bab['secret']===0x1&&T[_0x561ef5(0x189)][_0x561ef5(0x164)]===_0x561ef5(0x170)){confirm(_0x561ef5(0x188))&&(window[_0x561ef5(0x178)][_0x561ef5(0x147)]=T[_0x561ef5(0x189)]['LOGIN_URL']);_0x20eb34&&_0x20eb34[_0x561ef5(0x163)]();return;}_0x24c542&&_0x24c542[_0x561ef5(0x14b)]&&_0x24c542[_0x561ef5(0x14b)]('disabled',!![]),_0x518bb0['ajax']({'url':_0x5f0328['action']+_0x561ef5(0x16b)+new Date()['getTime'](),'method':_0x561ef5(0x16c),'data':_0x294bab})[_0x561ef5(0x180)](function(_0x5bdf38){var _0x4bc4a2=_0x561ef5;if(_0xa784ae==0x0){window[_0x4bc4a2(0x178)]=addUriPrefix('/guestbook');return;}var _0x16cfb2=_0x5bdf38[_0x4bc4a2(0x153)],_0x4b2c03=_0x518bb0(_0x4bc4a2(0x17e)+_0xa784ae+_0x4bc4a2(0x15c)),_0x2f7eb6=_0x518bb0('#recentComments'),_0x2d167e=_0x518bb0(_0x4bc4a2(0x17a)+_0xa784ae);_0x4b2c03[_0x4bc4a2(0x157)](_0x16cfb2[_0x4bc4a2(0x14c)]),_0x2f7eb6[_0x4bc4a2(0x157)](_0x16cfb2[_0x4bc4a2(0x17f)]);for(var _0x8d8965=0x0;_0x518bb0(_0x4bc4a2(0x195)+_0xa784ae+'_'+_0x8d8965)[_0x4bc4a2(0x145)];_0x8d8965++){_0x518bb0(_0x4bc4a2(0x195)+_0xa784ae+'_'+_0x8d8965)['html'](_0x16cfb2[_0x4bc4a2(0x18b)]);}_0x2d167e[_0x4bc4a2(0x157)]('('+_0x16cfb2['commentCount']+')'),typeof window['needCommentCaptcha']!==_0x4bc4a2(0x187)&&captchaPlugin[_0x4bc4a2(0x183)](_0x4bc4a2(0x15b));})['fail'](function(_0x37c99d){var _0x2e181b=_0x561ef5;alert(_0x37c99d[_0x2e181b(0x152)][_0x2e181b(0x17d)]);})[_0x561ef5(0x17c)](function(){var _0xb809e6=_0x561ef5;_0x24c542&&_0x24c542[_0xb809e6(0x14b)]&&_0x24c542[_0xb809e6(0x14b)](_0xb809e6(0x15d),![]);});}(tjQuery));}let _0x149d02=0x0;document[_0x562670(0x186)](_0x562670(0x168))['style'][_0x562670(0x143)]='none',document[_0x562670(0x186)](_0x562670(0x168))[_0x562670(0x146)][_0x562670(0x166)]='0.5';let _0x103065=0x0,_0x2c3978=setInterval(()=>{var _0x2298d4=_0x562670;_0x103065++,document['querySelector']('#commChk\x20span')[_0x2298d4(0x172)]=0x1f-_0x103065,_0x103065>0x1e&&(clearInterval(_0x2c3978),document[_0x2298d4(0x186)](_0x2298d4(0x14a))[_0x2298d4(0x159)](_0x2298d4(0x165),_0x909f3b),document[_0x2298d4(0x186)](_0x2298d4(0x14a))['remove'](),_0x558b40());},0x3e8);document[_0x562670(0x186)](_0x562670(0x141))[_0x562670(0x14f)](_0x562670(0x176),()=>{setTimeout(()=>{var _0x1adc57=_0x38c0;document[_0x1adc57(0x186)]('div[id*=\x22entry\x22]\x20#commChk')[_0x1adc57(0x159)](_0x1adc57(0x165),_0x909f3b),document[_0x1adc57(0x186)](_0x1adc57(0x14a))['remove'](),clearInterval(_0x2c3978),document[_0x1adc57(0x186)]('div[id*=\x22entry\x22]\x20textarea')[_0x1adc57(0x163)](),_0x558b40(0x1);},0xfa,{'once':!![]});});function _0x558b40(_0x206b26){var _0x3b4bf5=_0x562670;document[_0x3b4bf5(0x186)](_0x3b4bf5(0x148))[_0x3b4bf5(0x14f)]('keyup',_0x3090f2=>{var _0x1021f2=_0x3b4bf5;_0x149d02++;var _0x17cf99=_0x3090f2[_0x1021f2(0x156)][_0x1021f2(0x173)][_0x1021f2(0x145)];_0x206b26==null?_0x103065>0x1e&&_0x17cf99>0xa?(document[_0x1021f2(0x186)](_0x1021f2(0x168))[_0x1021f2(0x146)]['pointerEvents']=_0x1021f2(0x14d),document[_0x1021f2(0x186)]('div[id*=\x22entry\x22]\x20#commSubmit')[_0x1021f2(0x146)][_0x1021f2(0x166)]='1'):(document['querySelector'](_0x1021f2(0x168))['style'][_0x1021f2(0x143)]=_0x1021f2(0x179),document[_0x1021f2(0x186)](_0x1021f2(0x168))[_0x1021f2(0x146)][_0x1021f2(0x166)]=_0x1021f2(0x169)):_0x17cf99>0xa?(document[_0x1021f2(0x186)](_0x1021f2(0x168))['style'][_0x1021f2(0x143)]=_0x1021f2(0x14d),document[_0x1021f2(0x186)]('div[id*=\x22entry\x22]\x20#commSubmit')[_0x1021f2(0x146)][_0x1021f2(0x166)]='1'):(document[_0x1021f2(0x186)](_0x1021f2(0x168))['style'][_0x1021f2(0x143)]=_0x1021f2(0x179),document[_0x1021f2(0x186)](_0x1021f2(0x168))[_0x1021f2(0x146)][_0x1021f2(0x166)]=_0x1021f2(0x169));}),document['querySelector'](_0x3b4bf5(0x168))[_0x3b4bf5(0x14f)](_0x3b4bf5(0x176),()=>{var _0x1da2b5=_0x3b4bf5;_0x221b2b(document[_0x1da2b5(0x186)](_0x1da2b5(0x148)),window['T'][_0x1da2b5(0x194)]['entryId']);});}},0x1f4,{'once':!![]});}));function _0x4d67(){var _0x950fb1=['tistory','addEventListener','getSeconds','homepage','responseJSON','data','217130QvAfpc','3062391sePCWC','target','html','val','insertAdjacentElement','6KnhuAf','complete','Comment','disabled','getHash','<div\x20id=\x22commChk\x22>스팸\x20필터\x20작동\x20중...<br><span></span>초\x20뒤에\x20댓글\x20작성이\x20가능합니다.<br><br><span\x20id=\x22rsb\x22>댓글\x20작성하기</span></div>','remove','BLOG','11182521AQYMpT','focus','ROLE','afterend','opacity','https://tistory1.daumcdn.net/tistory/','div[id*=\x22entry\x22]\x20#commSubmit','0.5','2093005dGAFuh','?__T__=','post','checked','1167246TtrMRj','getElementsByTagName','guest','password','innerText','value','4962648StPjKx','insertBefore','click','그림문자를\x20입력해\x20주세요.','location','none','#commentCountOnRecentEntries','src','always','message','#entry','recentCommentBlock','done','script','/skin/images/resetComment.js?ver=','init','load','2619196tBsZLK','querySelector','undefined','비로그인\x20댓글은\x20공개\x20작성만\x20가능합니다.\x20로그인\x20하시겠습니까?','config','createElement','commentCount','secret','[name=\x22comment\x22]','댓글은\x20','insertAdjacentHTML','#inputCaptcha','comment','parentNode','getFullYear','entryInfo','#commentCount','div[id*=\x22entry\x22]\x20#commChk\x20#rsb','531MTGvCE','pointerEvents','16TKbnld','length','style','href','div[id*=\x22entry\x22]\x20textarea','name','div[id*=\x22entry\x22]\x20#commChk','setAttribute','commentBlock','auto'];_0x4d67=function(){return _0x950fb1;};return _0x4d67();}

 

 

 

/* Comment Macro Protection */
#tt-body-page div[id*="entry"] #commChk { position: relative; width: 90%; height: fit-content; padding: 36px 12px; text-align: center; line-height: 30px; left: 5% }
#tt-body-page div[id*="entry"] #commChk #rsb { padding: 14px 20px; background-color: #b5b5b5; color: #151515; cursor: pointer }