Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
*.asp *.jsp взлом
 
могу размещать на сервере файлы *.asp *.jsp и выполнять их....существует ли какой-нибудь эксплоит на *.asp или *.jsp который я мог реализовать вот так??? заранее спасибо
 
Смотря какие у тебя цели
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
Цитата
Quote: Опубликовал индевять на 09 Апрель 2003
могу размещать на сервере файлы *.asp *.jsp и выполнять их....существует ли какой-нибудь эксплоит на *.asp или *.jsp который я мог реализовать вот так??? заранее спасибо

Если хостинг поддерживает ASP.NET то, в зависимости от криворукости админов хостера, можно накопать много вкусностей...
 
Да в общем и без ASP.NET можно немало гадостей натворить...
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
Цитата
Quote: Опубликовал Pig killer на 09 Апрель 2003
Да в общем и без ASP.NET можно немало гадостей натворить...

Просто у ASP.NET есть неприятная особенность, связанная с ASPNET-аккаунтом и identity impersonate =)

Когда мы это раскопали, чуть не охренели... =(
 
Ты не говори загадками, а расскажи по подробней.
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
Оки. =) Имена "битых" хостингов, есстесно не скажу. =)

Проблема заключается в следующем. Единственное условие -- нужно положить пару файлов на сервак.



По умолчанию, все web applications, создаваемые в IIS-е (aspnet_wp.exe) работают в контексте пользователя ASPNET, и это вроде не меняется. Если на хостинге есть несколько "сайтов" (так обычно и бывает -- colocation вроде называется), то для любого юзера, пришедшего на эти сайты создается webapp (или дается готовый) выполняющийся под ASPNET. Это, как грится, раз.



Далее, пишется простейший файловый браузер (средствами .NET). Типа список файлов / список папок. Каждый элемент списка -- ссылка на сам файлик / каталог. Юзер кликает по имени каталога, и соответственно, на ASP.NET страницу выдается команда "ChDir ()". Это реализуется очень просто.



А результат может быть таким:

Допустим есть некоторый хост: a.host.ru

Мы кладем нашу .ASPX: a.host.ru/br.aspx

Вызываем её и видим файлики в корне (ну по умолчанию так =) хоста. Дальше переходим выше ('..') и видим нечто подобное:

 www

 ftp

 logfiles

 mail

 ...

Дальше переходим ещё выше и видим ещё более интересные вещи:

 a_host_ru

 b_host_ru

 c_host_ru

 ...

Идем, к примеру, на b_host_ru:

 www

 ftp

 logfiles

 mail

 ...

Дальше в www, и вытагиваем всю интеллектуальную собственность... =)

Да, можно стянуть что-нить типа NTUSER.LOG (у нас получилось).

Вот, в принципе, и все.

На счет записи файлов -- это сложнее, т.к. ASPNET по умолчанию не имеет таких прав. Но можно че-нить откудова--нить стянуть.



Вот и все.

BTW, если нужен конкретный sample -- могу дать урл... =)
 
Вот от таких проблем и надо parent path запрещать. Фиг что нибуть сделаешь без него.

Да и при правильном задавании прав все это не сработает. Нужно просто иметь привычку каждый сайт запускать под отдельным аккаунтом, у которого права только на свою директорию.
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
Или я не прав?
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
Цитата
Quote: Опубликовал Pig killer на 09 Апрель 2003
Вот от таких проблем и надо parent path запрещать. Фиг что нибуть сделаешь без него.

Пальцем в небо, ибо parent paths тут не при чем. Как ты запретишь parent paths на уровне CreateFile() или FileSystemObject.OpenTextFile () ? Вся пенка-то в этом...
Цитата
Quote: <i></i>
Да и при правильном задавании прав все это не сработает. Нужно просто иметь привычку каждый сайт запускать под отдельным аккаунтом, у которого права только на свою директорию.

А вот это не сработает, ибо ASPNET один (я не нашел как менять), а IUSR_xxx -- их дофига, но они тут не при чем.



Нужно настраивать .NET, чтобы пришедший на сайт юзер не шлялся под ASPNET, и пёр под IUSR_xxx, тогда все будет в шоколаде... =)
 
В догонку:



По умолчанию IIS настроен так, что любой юзер, по сути, рабтает под ASPNET, если нет явного требования для impersonation. А требования лежат в web.config нашего сайта / каталога... =)
 
И последнее:



Если на форуме присутствуют админы, то меняйте в

%systemroot%\Microsoft.NET\Framework\%frameworkversion%\config\machine.config

 <identity impersonate="false" userName="" password=""/>

на

 <identity impersonate="true" userName="" password=""/>



Проблема решится. По крайней мере хоть как-то поможет.
Страницы: 1
Читают тему