diff --git a/LICENSE b/LICENSE index 22030f0..563fab6 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2016 hakasenyang +Copyright (c) 2016-2017 hakasenyang Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 40a2005..0b8f01d 100644 --- a/README.md +++ b/README.md @@ -26,9 +26,13 @@ rewrite ^/fmaru$ /fmaru.php; Fmaru 관련 포팅의 원본 소스는 [fmaru's github](https://github.com/fmaru/fmaru) 에서 확인하실 수 있습니다. ## Sucuri proxy 소스 +``` Sucuri proxy 관련 소스는 아래와 같은 사이트에서 가져왔습니다. * [organization's cloudflare-bypass](https://github.com/organization/cloudflare-bypass) * [코드팟's PHP Sucuri Proxy](http://cafe.naver.com/gogoomas/337647) +``` +현재 yuncomics 에서 wasabisyrup 으로 교체되면서 Sucuri Proxy 가 적용되고 있지 않습니다. +따라서 현재는 임시로 소스를 제거합니다. ## 저작권 MIT License 를 따릅니다. fmaru 의 작품(?)처럼 마음껏 수정해서 광고를 달던 어떻게 사용하던 상관 없습니다. diff --git a/_function.php b/_function.php index 5f4aef6..59e57ab 100644 --- a/_function.php +++ b/_function.php @@ -35,144 +35,6 @@ $this->ErrorEcho(14, 'Connect Error!!!'); return ($data) ? $data : false; } - /** - * sucuri - sucuri 프록시 관련 쿠키 우회 - * 소스 : https://github.com/organization/cloudflare-bypass - * 소스 : http://cafe.naver.com/gogoomas/337647 - * @param string $result 쿠키 string 입력 - * @return strring 쿠키 데이터 출력 - * 사용하지 않음. - */ - /*public function sucuri($result) - { - if(strpos($result, 'sucuri_cloudproxy_js') !== false) - { - $cp_temp1 = explode('S=\'', $result); - $cp_temp2 = explode(';', $cp_temp1[1]); - $cp_script = $cp_temp2[0]; - $cp_temp1 = explode('A=\'', $result); - $cp_temp2 = explode('\';', $cp_temp1[1]); - $cp_chlist = $cp_temp2[0]; - $cp_charr = array(); - for($i = 0; $i < 64; $i++) - $cp_charr[$cp_chlist[$i]] = $i; - $cp_len = strlen($cp_script); - $cp_c = 0; - $cp_u = 0; - $cp_i = 0; - $cp_l = 0; - $cp_a = NULL; - $cp_r = NULL; - for($i = 0; $i < $cp_len; $i++) - { - $cp_c = $cp_charr[$cp_script[$i]]; - $cp_u = ($cp_u << 6) + $cp_c; - $cp_l += 6; - while($cp_l >= 8) - (($cp_a = ($cp_u >> ($cp_l -= 8)) & 0xff) || ($cp_i < ($cp_len - 2))) && ($cp_r .= chr($cp_a)); - } - $cp_temp1 = explode('document.cookie=', $cp_r); - $cp_temp2 = explode('=', $cp_temp1[1]); - $cp_cnam = str_replace('"', '\'', $cp_temp2[0]); - $cp_cnam_split = explode('+', $cp_cnam); - $cp_cnam_split_cnt = count($cp_cnam_split); - $cp_cnam_string = NULL; - for($i = 0 ; $i < $cp_cnam_split_cnt; $i++) - { - $cp_cnam = trim($cp_cnam_split[$i]); - if(strpos($cp_cnam, 'slice') !== false) - { - $cp_temp1 = explode('\'', $cp_cnam); - $cp_temp2 = explode('(', $cp_cnam); - $cp_temp3 = explode(')', $cp_temp2[1]); - $cp_temp4 = explode(',', $cp_temp3[0]); - $cp_cnam_string .= substr($cp_temp1[1], trim($cp_temp4[0]), (intval(trim($cp_temp4[1])-trim($cp_temp4[0])))); - } - elseif(strpos($cp_cnam, 'charAt') !== false) - { - $cp_temp1 = explode('\'', $cp_cnam); - $cp_temp2 = explode('(', $cp_cnam); - $cp_temp3 = explode(')', $cp_temp2[1]); - $cp_cnam_string .= substr($cp_temp1[1], trim($cp_temp3[0]), 1); - } - elseif(strpos($cp_cnam, 'String.fromCharCode') !== false) - { - $cp_temp1 = explode('(', $cp_cnam); - $cp_temp2 = explode(')', $cp_temp1[1]); - if(strpos($cp_temp2[0], '0x') !== false) - $cp_cnam_string .= chr(hexdec($cp_temp2[0])); - else - $cp_cnam_string .= chr($cp_temp2[0]); - } - elseif(strpos($cp_cnam, 'substr') !== false) - { - $cp_temp1 = explode('\'', $cp_cnam); - $cp_temp2 = explode('(', $cp_cnam); - $cp_temp3 = explode(')', $cp_temp2[1]); - $cp_temp4 = explode(',', $cp_temp3[0]); - $cp_cnam_string .= substr($cp_temp1[1], trim($cp_temp4[0]), trim($cp_temp4[1])); - } - else - $cp_cnam_string .= trim(trim($cp_cnam, '\'')); - $cp_cnam_string .= NULL; - } - //$cp_temp1 = explode('=', $cp_r); - $cp_temp1 = strpos($cp_r, '='); - $cp_temp2 = explode(';document.cookie', substr($cp_r, $cp_temp1+1)); //$cp_temp[1] - $cp_cval = str_replace('"', '\'', $cp_temp2[0]); - $cp_cval_split = explode('+', $cp_cval); - $cp_cval_split_cnt = count($cp_cval_split); - $cp_cval_string = null; - for($i = 0 ; $i < $cp_cval_split_cnt; $i++) - { - $cp_nval = trim($cp_cval_split[$i]); - if(strpos($cp_nval, 'slice') !== false) - { - $cp_temp1 = explode('\'', $cp_nval); - $cp_temp2 = explode('(', $cp_nval); - $cp_temp3 = explode(')', $cp_temp2[1]); - $cp_temp4 = explode(',', $cp_temp3[0]); - $cp_cval_string .= substr($cp_temp1[1], trim($cp_temp4[0]), (intval(trim($cp_temp4[1])-trim($cp_temp4[0])))); - } - elseif(strpos($cp_nval, 'charAt') !== false) - { - $cp_temp1 = explode("'", $cp_nval); - $cp_temp2 = explode("(", $cp_nval); - $cp_temp3 = explode(")", $cp_temp2[1]); - $cp_cval_string .= substr($cp_temp1[1], trim($cp_temp3[0]), 1); - } - elseif(strpos($cp_nval, 'String.fromCharCode') !== false) - { - $cp_temp1 = explode('(', $cp_nval); - $cp_temp2 = explode(')', $cp_temp1[1]); - if(strpos($cp_temp2[0], '0x') !== false) - { - $cp_cval_string .= chr(hexdec($cp_temp2[0])); - } - else - { - $cp_cval_string .= chr($cp_temp2[0]); - } - } - elseif(strpos($cp_nval, 'substr') !== false) - { - $cp_temp1 = explode('\'', $cp_nval); - $cp_temp2 = explode('(', $cp_nval); - $cp_temp3 = explode(')', $cp_temp2[1]); - $cp_temp4 = explode(',', $cp_temp3[0]); - $cp_cval_string .= substr($cp_temp1[1], trim($cp_temp4[0]), trim($cp_temp4[1])); - } - else - { - $cp_cval_string .= trim(trim($cp_nval, '\'')); - } - $cp_cval_string .= NULL; - } - - // String Output - return $cp_cnam_string."=".$cp_cval_string; - } - }*/ public function FileRead($filename=NULL) { $filename = ($filename) ? $filename : $this->fname; @@ -193,9 +55,6 @@ } public function GetCookie() { - /*$data = $this->WEBParsing('http://wasabisyrup.com/archives/'); - $cookie = $this->splits($data, ''); - $cookie = $this->sucuri($cookie);*/ $data = $this->WEBParsing('http://wasabisyrup.com/archives/455742', $cookie, true, 'pass=qndxkr', array( 'Referer: http://wasabisyrup.com/' diff --git a/fmaru.php b/fmaru.php index 3b1a5b0..1770738 100644 --- a/fmaru.php +++ b/fmaru.php @@ -12,7 +12,7 @@
- - + +