One Hat Cyber Team
Your IP :
13.58.119.216
Server IP :
162.241.123.123
Server :
Linux sh016.hostgator.in 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
Server Software :
Apache
PHP Version :
8.2.25
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home1
/
saicsazq
/
vartha.org
/
application
/
libraries
/
Edit File:
Recaptcha.php
<?php /** * CodeIgniter NO Captcha ReCAPTCHA a.k.a reCAPTCHA Version 2.0 library * * This library is based on official reCAPTCHA library for PHP * https://github.com/google/ReCAPTCHA * */ defined('BASEPATH') OR exit('No direct script access allowed'); class ReCaptcha { private $signup_url = "https://www.google.com/recaptcha/admin"; private $_siteVerifyUrl = "https://www.google.com/recaptcha/api/siteverify?"; private $_secret, $_sitekey, $_lang; private $_version = "php_1.0"; function __construct() { $this->ci = & get_instance(); $this->ci->load->config('recaptcha', TRUE); if ($this->ci->config->item('recaptcha_secretkey', 'recaptcha') == NULL || $this->ci->config->item('recaptcha_secretkey', 'recaptcha') == "") { die("To use reCAPTCHA you must get an API key from <a href='" . $this->signup_url . "'>" . $this->signup_url . "</a>"); } if ($this->ci->config->item('recaptcha_sitekey', 'recaptcha') == NULL || $this->ci->config->item('recaptcha_sitekey', 'recaptcha') == "") { die("To use reCAPTCHA you must get an API key from <a href='" . $this->signup_url . "'>" . $this->signup_url . "</a>"); } $this->_secret = $this->ci->config->item('recaptcha_secretkey', 'recaptcha'); $this->_sitekey = $this->ci->config->item('recaptcha_sitekey', 'recaptcha'); if ($this->ci->config->item('lang', 'recaptcha') == NULL || $this->ci->config->item('lang', 'recaptcha') == "") { $this->_lang = 'en'; } else { $this->_lang = $this->ci->config->item('lang', 'recaptcha'); } } /** * Function to convert an array into query string * @param array $data Array of params * @return String query string of parameters */ private function _encodeQS($data) { $req = ""; foreach ($data as $key => $value) { $req .= $key . '=' . urlencode(stripslashes($value)) . '&'; } return substr($req, 0, strlen($req) - 1); } /** * HTTP GET to communicate with reCAPTCHA server * @param string $path URL to GET * @param array $data Array of params * @return string JSON response from reCAPTCHA server */ private function _submitHTTPGet($path, $data) { $req = $this->_encodeQS($data); $response = file_get_contents($path . $req); return $response; } /** * Function for rendering reCAPTCHA widget into views * Call this function in your view * @return string embedded HTML */ public function render() { $return = '<div class="g-recaptcha" data-sitekey="' . $this->_sitekey . '"></div> <script src="https://www.google.com/recaptcha/api.js?hl=' . $this->_lang . '" async defer></script>'; return $return; } /** * Function for verifying user's input * @param string $response User's input * @param string $remoteIp Remote IP you wish to send to reCAPTCHA, if NULL $this->input->ip_address() will be called * @return array Array of response */ public function verifyResponse($response, $remoteIp = NULL) { if ($response == null || strlen($response) == 0) { // Empty user's input $return = array( 'success' => FALSE, 'error_codes' => 'missing-input' ); } $getResponse = $this->_submitHttpGet( $this->_siteVerifyUrl, array( 'secret' => $this->_secret, 'remoteip' => (!is_null($remoteIp)) ? $remoteIp : $this->ci->input->ip_address(), 'v' => $this->_version, 'response' => $response ) ); $answers = json_decode($getResponse, TRUE); if (trim($answers ['success']) == true) { // Right captcha! $return = array( 'success' => TRUE, 'error_codes' => '' ); } else { // Wrong captcha! $return = array( 'success' => FALSE, 'error_codes' => $answers['error-codes'] ); } return $return; } }
Simpan