• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

PHP Inection Atak xss losujący cytat

VPS Starter Arubacloud
0 głosów
358 wizyt
pytanie zadane 25 stycznia 2019 w PHP przez Grzegorz Mikina Dyskutant (8,060 p.)
/* global $ */
<?php
echo "

$("#arrow").click(function () {
    $('html,body').animate({
        scrollTop: $("main").offset().top
    },
                           2000);
});"
$cytaty = array(
    " ”Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    " Epicuro ratio neglegendi doloris. ",
    " Atque ab his initiis profecti omnium virtutum et originem et progressionem persecuti sunt.",
    

);

$random_number = rand(0, count($cytaty) - 1);
echo $cytaty[$random_number] . "<br />"; // [0, 2]
?>

Czy jest ktoś w stanie określić dlaczego ten skrypt nie wywołuje się ? :) Chcę żeby treść z tablicy była wyrzucana na ekran i jednocześnie aby strona przewijałą się w dół. Bez php działa idealnie. 

 

2 odpowiedzi

0 głosów
odpowiedź 25 stycznia 2019 przez OdsetekGlupoty Pasjonat (15,360 p.)
A gdzie otwierasz tag <script> dla kodu jQuery?
komentarz 25 stycznia 2019 przez niezalogowany

Boże on myślał że pisze w PHP a nie JS cheeky

1
komentarz 25 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)
Nie mieszaj w to stwórcy
0 głosów
odpowiedź 25 stycznia 2019 przez hun1er76 Stary wyjadacz (11,960 p.)

Kod js musi znajdować się pomiędzy tagiem script. A poza tym niepoprawne wykonanie funkcji echo. Rodzaj cudzysłowów zamykających tekst nie może znajdować się w tym zamkniętym tekście. Dodatkowo nie tak wyświetla się wielolinijkowy tekst. W tym przypadku trzeba zamienić cudzysłowy w stringu na apostrofy i najlepiej zapisać ciąg w jednej linijce. Mimochodem polecam używać normalnego IDE, który podświetla błędną składnię.

PS. Co tytuł ma wspólnego z problemem - 

komentarz 25 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)

Regexem uciekam od komentarza, gdyż nie kolorowało mi składni, ale coś jeszcze nie jest do końca dobrze :)

<?php
echo "
<script>
$(\"#arrow").click(function () {
    $('html,body').animate({
        scrollTop: $(\"main\").offset().top
    },
                           2000);
});
</script>
$cytaty = array(
    " ”Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    " Epicuro ratio neglegendi doloris. ",
    " Atque ab his initiis profecti omnium virtutum et originem et progressionem persecuti sunt.",
    

);

$random_number = rand(0, count($cytaty) - 1);";
echo $cytaty[$random_number] . "<br />"; // [0, 2]
?>

 

komentarz 25 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)

@hun1er76, tytuł może niewiele, ale zasada działania jest podobna :) 

komentarz 26 stycznia 2019 przez hun1er76 Stary wyjadacz (11,960 p.)
Linia 4 brak slasha przy zamykającym tekst cudzysłowie
Linia 10 brak cudzysłowia
Linia 19 nadmiarowy cudzysłów i średnik
komentarz 27 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)
<main>
            <div id="arrow2"><i class="fa fa-angle-down" aria-hidden="true"></i></div>
    </main>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
    </script>
       <script src="php/php1.php"></script>
       <script src="js/javascript2.js"></script>
        </body>

wspomniany skrypt php 
 

/* global $ */
<?php
echo "
<script>
$(\"#arrow\").click(function () {
    $('html,body').animate({
        scrollTop: $(\"main\").offset().top
    },
                           2000);
});
</script>\"
$cytaty = array(
    " ”Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    " Epicuro ratio neglegendi doloris. ",
    " Atque ab his initiis profecti omnium virtutum et originem et progressionem persecuti sunt.",


);

$random_number = rand(0, count($cytaty) - 1);
                     echo $cytaty[$random_number] . "<br />"; // [0, 2]
?>

Dalej brak możliwości losowania przy przesuwaniu w dół.
Powrót działa bez zarzutu .

komentarz 27 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)

@hun1er76, I nie chodzi o to że mogę to zrobić w inny sposób i to będzie działać. Chodzi o to żeby to działało właśnie w taki sposób. Szukam alternatywnych rozwiązań różnych problemów.

komentarz 27 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)

Drugi JS odpowiedzialny za powrót:
 

/* global $ */
$("#arrow2").click(function () {
    $('html,body').animate({
        scrollTop: 0
    },
                           2000);
});

 

komentarz 27 stycznia 2019 przez hun1er76 Stary wyjadacz (11,960 p.)

Może zacznijmy od podstawowych pojęć. PHP jest wykonywany na serwerze i działa na zasadzie request->response. Strona jest załadowana dopiero wtedy, kiedy kończy się działanie skryptu php'a. Potem nie możesz oczekiwać, że ten Twój kod php się wykona po załadowaniu już strony. Nie możesz też łączyć kodu php do js - odwrotnie tak.

Możesz natomiast za pomocą js wysłać asynchronicznego requesta do pliku php (zagadnienie AJAX) i oczekiwać od niego odpowiedzi (zagadnienie obietnice).

komentarz 27 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)
przywrócone 27 stycznia 2019 przez Grzegorz Mikina
Zaraz przeczytam, mam plik html który po kliknięciu w diva powinien odsyłać do pliku php w który jest wpleciony JS ( powoduje przewijanie strony o 100% w dół) a sam kod php ma losować z tablicy tekst. Naprawdę uważasz, że to nie ma szans zadziałać w ten sposób?
komentarz 29 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)
Mam jeszcze jeden pomysł :D Do bazy danych dodam wpisy w których będzie wspomniany SQL inection atak xss i to będzie powodować przesunięcie strony o 100% w dół :)
komentarz 29 stycznia 2019 przez Grzegorz Mikina Dyskutant (8,060 p.)

@hun1er76, Passive Event Listeners Javascriptu funkcja JS dodana do przeglądarek 2016 roku. 

Podobne pytania

0 głosów
3 odpowiedzi 512 wizyt
pytanie zadane 29 czerwca 2021 w PHP przez mat19 Obywatel (1,580 p.)
0 głosów
1 odpowiedź 189 wizyt
0 głosów
1 odpowiedź 283 wizyt
pytanie zadane 3 stycznia 2018 w PHP przez maciej.szarlat Użytkownik (710 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...