střeva hlasování | ![Lame](/images/design/lame.gif) | # |
| Snažím se pochopit jedno hlasování.Pokud se nemýlím, tak když vše proběhne dobře spustí se ten js kód:
Voting =
{
TextOn: "hlasovat",
TextOff: "zrušit hlasování",
LoadImg: '<img src="http://' + domain + '/img/mikro/load.gif" />',
Processing: [],
Init: function()
{
$('span.vote-state-0').html('<a href="#">' + Voting.TextOn + '</a>');
$('span.vote-state-1').html('<a href="#">' + Voting.TextOff + '</a>');
$('span.voteBtn a').click(
function()
{
var id = $(this).parent().attr("class").match("vote- id-([0-9]+)")[1];
var state = $(this).parent().attr("class").search("vote -state-1") > 0;
Voting.Toggle(id, state);
return false;
}
);
},
Toggle: function(albumID, state)
{
if (Voting.Processing[albumID] == true)
{
return;
};
Voting.Processing[albumID] = true;
setTimeout(function() {
$('span.vote-id-' + albumID).each(function() {
if (Voting.Processing[albumID] == true) {
$(this).append(Voting.LoadImg);
}
});
}, 200);
setTimeout(function()
{
$.post("/_www_root_/ajax/.albumVote.php", { albumID: albumID, state: !state } , function(data)
{
Voting.Processing[albumID] = false;
$('span.vote-id-' + albumID).find('img').remove();
$('span.vote-id-' + albumID)
.removeClass('vote-state-0')
.removeClass('vote-state-1')
.addClass('vote-state-' + (data.state ? '1' : '0'))
.find('a').text(data.state ? Voting.TextOff : Voting.TextOn);
}, "json");
}, 500);
}
}
$(function()
{
Voting.Init();
});
Byl by prosím někdo tak hodný a řekl mi o co tam přibližně jde?
Chápu to dobře, že to odešle POST s parametry : ALBUM ID a STATE ?
díky moc
(odpovědět) | massic | | 252804260 | 16.10.2012 1:02 |
|
|
|
| Chápeš to dobře. To ostatní okolo je jen omáčka, která se stará o změnu textu "hlasovat/zrušit" a o načítání ikonek.
----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem. (odpovědět) | |
|
|
| díky za odpověď,
a je nějakým způsobem možné vidět co je obsaženo v tom souboru na serveru?Respektive jestli jde zjistit, zda tam je ochrana hlasování z různých IP adres? Kamarád mi doporučoval : změň adresu na absolutní.
Ale nerozumím tomu, co by mi to odhalilo :( (odpovědět) | massic | | 252804260 | 16.10.2012 10:52 |
|
|
|
| ještě doplním, že se počet hlasů nikde veřejně nezobrazuje. To by se případně dalo zjistit? Právě mě leda napadá, kdyby šel zobrazit kód toho ajaxu. Tam by mohlo být vidět do jaké DB to ukládá, ne? (odpovědět) | massic | | 252804260 | 16.10.2012 10:56 |
|
|
|
| Promiň, ale na základě tvých doplňujících otázek jsem to musel hodit jako lame. Na to, že si prohlédneš, jak to funguje na straně serveru rovnou zapomeň.
----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem. (odpovědět) | |
|
|
| No dobře, a to ověření nějakým způsobem zda je to chráněné hlasováním z různých IP adres lze? (odpovědět) | massic | | 252804260 | 16.10.2012 12:50 |
|
|
|
| Podle toho kódu výše předpokládám, že po zahlasování vidíš odkaz "zrušit hlasování". Vymaž si cookies, jestli se ten odkaz změní na "hlasovat". Pokud ano, tak zřejmě žádná kontrola IP implementována nebude. S jistotou to ale ani tak vědět nebudeš, vzhledem k tomu, že nevidíš počet hlasů. Na CSRF to je ale náchylné určitě. Najdeš tu o této zranitelnosti hned několik článků.
----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem. (odpovědět) | |
|
|
| joo díky, to s COOKIE jsem věděl hned zezačátku, jen mě štve to ověření zda to opravdu funguje:) (odpovědět) | massic | | 252804260 | 17.10.2012 14:26 |
|
|
|