!C99Shell v. 2.1 [PHP 8 Update] [02.02.2022]!

Software: Apache/2.4.53 (Unix) OpenSSL/1.1.1o PHP/7.4.29 mod_perl/2.0.12 Perl/v5.34.1. PHP/7.4.29 

uname -a: Linux vps-2738122-x 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64 

uid=1(daemon) gid=1(daemon) grupos=1(daemon) 

Safe-mode: OFF (not secure)

/opt/apex_tdfonline/php/3ros/shindig/src/gadgets/oauth/   drwxr-xr-x
Free 13.97 GB of 61.93 GB (22.55%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     BasicGadgetOAuthTokenStore.php (4.05 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

class BasicGadgetOAuthTokenStore extends GadgetOAuthTokenStore {

  
/** default location for consumer keys and secrets */
  
private $OAUTH_CONFIG "oauth.json";
  private 
$CONSUMER_SECRET_KEY "consumer_secret";
  private 
$CONSUMER_KEY_KEY "consumer_key";
  private 
$KEY_TYPE_KEY "key_type";

  public function 
__construct($store$fetcher) {
    
parent::__construct($store$fetcher);
    
$this->OAUTH_CONFIG Config::get('container_path') . $this->OAUTH_CONFIG;
  }

  public function 
initFromConfigFile($fetcher) {
    
// Read our consumer keys and secrets from config/oauth.js
    // This actually involves fetching gadget specs
    
try {
      
$oauthConfigStr file_get_contents($this->OAUTH_CONFIG);
      
// remove all comments because this confuses the json parser
      // note: the json parser also crashes on trailing ,'s in records so please don't use them
      
$contents preg_replace('@/\\*.*?\\*/@s'''$oauthConfigStr);
      
$oauthConfig json_decode($contentstrue);
      if (
$oauthConfig == $contents) {
        throw new 
GadgetException("OAuth configuration json failed to parse.");
      }
      foreach (
$oauthConfig as $gadgetUri => $value) {
        
$this->storeConsumerInfos($gadgetUri$value);
      }
    } catch (
Exception $e) {
      throw new 
GadgetException($e);
    }
  }

  private function 
storeConsumerInfos($gadgetUri$oauthConfig) {
    foreach (
$oauthConfig as $key => $value) {
      
$serviceName $key;
      
$consumerInfo $value;
      
$this->storeConsumerInfo($gadgetUri$serviceName$consumerInfo);
    }
  }

  private function 
storeConsumerInfo($gadgetUri$serviceName$consumerInfo) {
    if (! isset(
$consumerInfo[$this->CONSUMER_SECRET_KEY]) || ! isset($consumerInfo[$this->CONSUMER_KEY_KEY]) || ! isset($consumerInfo[$this->KEY_TYPE_KEY])) {
      throw new 
Exception("Invalid configuration in oauth.json");
    }
    
$consumerSecret $consumerInfo[$this->CONSUMER_SECRET_KEY];
    
$consumerKey $consumerInfo[$this->CONSUMER_KEY_KEY];
    
$keyTypeStr $consumerInfo[$this->KEY_TYPE_KEY];
    
$keyType 'HMAC_SYMMETRIC';
    if (
$keyTypeStr == "RSA_PRIVATE") {
      
$keyType 'RSA_PRIVATE';
      
$cache Cache::createCache(Config::get('data_cache'), 'OAuthToken');
      if ((
$cachedRequest $cache->get(md5("RSA_KEY_" $serviceName))) !== false) {
        
$consumerSecret $cachedRequest;
      } else {
        
$key $consumerInfo[$this->CONSUMER_SECRET_KEY];
        if (empty(
$key)) {
          throw new 
Exception("Invalid key");
        }
        if (
strpos($key"-----BEGIN") === false) {
          
$strip_this = array(" ""\n""\r");
          
//removes breaklines and trim.
          
$rsa_private_key trim(str_replace($strip_this""$key));
          
$consumerSecret OAuth::$BEGIN_PRIVATE_KEY "\n";
          
$chunks str_split($rsa_private_key64);
          foreach (
$chunks as $chunk) {
            
$consumerSecret .= $chunk "\n";
          }
          
$consumerSecret .= OAuth::$END_PRIVATE_KEY;
        } else {
          
$consumerSecret $key;
        }
        
$cache->set(md5("RSA_KEY_" $serviceName), $consumerSecret);
      }
    }
    
$kas = new ConsumerKeyAndSecret($consumerKey$consumerSecret$keyType);
    
$this->storeConsumerKeyAndSecret($gadgetUri$serviceName$kas);
  }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.1 [PHP 8 Update] [02.02.2022] maintained byC99Shell Github | Generation time: 0.9549 ]--