Payload (informatyka)
Payload – fragment przesyłanych danych, będący formą wiadomości. Payload nie zawiera informacji wysyłanych wraz z nim, takich jak nagłówki bądź metadane, czasami określane jako dane ogólne, wysyłane wyłącznie w celu ułatwienia dostarczenia pakietu[1][2].
Termin „payload” służy do rozróżnienia „istotnych” informacji w otrzymanym pakiecie od metadanych wykorzystanych do jego obsługi. Pojęcie to jest zapożyczone z dziedziny transportu, gdzie odnosi się ono do „wartościowej” części obciążenia. Przykładowo ładowność cysterny wynosi 20 ton oleju, lecz masa całkowita pojazdu w pełni załadowanego jest dużo większa, ponieważ dochodzi do tego m.in. masa zbiornika, ładunku, pojazdu, kierowcy etc. Używanie pojazdu do transportu ładunku wiąże się z kosztami, ale klient płaci (ang. pay) tylko za dostarczony olej (czyli ładunek – ang. load), stąd określenie payload.
Zastosowania
[edytuj | edytuj kod]W kontekście bezpieczeństwa komputerowego, termin payload oznacza część szkodliwego oprogramowania, która wykonuje szkodliwe działanie[3]. Ma ono zazwyczaj dwa cele: rozprzestrzenianie się i wykonywanie pewnej modyfikacji w systemie docelowym, takiej jak usuwanie plików, złamanie zabezpieczeń systemu, wykonanie połączenia telefonicznego itp. Część, która się rozprzestrzenia to metadane, natomiast kod, który wykonuje rzeczywistą szkodliwą pracę, to payload.
W kontekście analizy szkodliwego oprogramowania, takiego jak robaki, wirusy i konie trojańskie, payload odnosi się do niekorzystnych efektów działania takich programów. Przykładowe payloady obejmują m.in. niszczenie danych, wiadomości zawierające obraźliwe treści lub fałszywe wiadomości e-mail wysyłane do dużej liczby osób.
W programowaniu, najbardziej powszechne użycie tego terminu występuje w kontekście protokołów komunikacyjnych, w celu odróżnienia metadanych od danych rzeczywistych. Przykładowo można rozważyć odpowiedź usługi JSON, która wygląda następująco (sformatowane dla zwiększania czytelności):
{
"status":"OK",
"data":{
"message":"Hello, world!"
}
}
W tym przypadku ciąg "Hello, world!
" jest payloadem – tzn. częścią, która najbardziej interesuje odbiorcę – resztę stanowią metadane protokołu.
Przypisy
[edytuj | edytuj kod]- ↑ Payload definition. Pcmag.com, 1994-12-01. [dostęp 2012-02-07].
- ↑ Payload definition. Techterms.com. [dostęp 2012-02-07].
- ↑ Payload definition. Securityfocus.com. [dostęp 2012-02-07].