Spis Treści



Pandemic House Keeping

-Skróty klawiaturowe Windows 10

-TypeScript w 50 Lekcjach

-MongoDB : 50 "Magicznych" Sztuczek

-Zostań Developperem iOS

-Słowniki


TESTY / CERTYFIKATY

• Zostań PenTesterem

• CompTIA A+

• CISSP w Praktyce

• Test Penetracyjny NESSUS

• Test Penetracyjny BACKBOX

• Test Penetracyjny BASH SHELL

• Test Penetracyjny METASPLOIT


Artykuły

-Co to jest Dart?

-Web Of Things

-Software Engineering


Codzienniki

-Design Thinking

-Grey Hat Hacking





Polecane…



Zapobieganie : Obrona Techniczna

100 Pytań Do…Chief Digital Officer(a)

Wielka Księga Bezpieczeństwa

Kurs Etycznego Hackera

Filozofia Sztucznej Inteligencji

Historia Sztucznej Inteligencji

Jak zbudować chatbota

Web 3.0

Komputer Kwantowy

Zostań PeHaPowcem





XV Podstawowych Skrótów w Windows 10

1. Ctrl + A: Ctrl + A, podświetla lub zaznacza wszystko, co masz w środowisku, w którym pracujesz. Jeśli myślisz sobie: "Wow, zawartość tego dokumentu jest obszerna i nie ma czasu, aby ją wybrać, a poza tym wywrze presję na moim komputerze?" Używanie myszy do tego jest przestarzałą metodą obsługi zadania, takiego jak wybieranie wszystkich, Ctrl + A zajmie się tym w zaledwie kilka sekund.

2. Ctrl + C: Ctrl + C kopiuje dowolny podświetlony lub wybrany element w środowisku pracy. Oszczędza czas i stres, który zostałby użyty do kliknięcia prawym przyciskiem myszy i ponownego kliknięcia tylko w celu skopiowania. Użyj Ctrl + C.

3. Ctrl + N: Ctrl + N otwiera nowe okno lub plik. Zamiast klikać Plik, Nowy, pusty / szablon i kolejne kliknięcie, po prostu naciśnij Ctrl + N, a nowe okno lub plik pojawi się natychmiast.

4. Ctrl + O: Ctrl + O otwiera istniejący plik. Użyj Ctrl + O, gdy chcesz zlokalizować / otworzyć plik lub program.

5. Ctrl + P: Ctrl + P drukuje aktywny dokument. Zawsze używaj tego do zlokalizowania okna dialogowego drukarki i drukowania.

6. Ctrl + S: Ctrl + S zapisuje nowy dokument lub plik i zmiany wykonane przez użytkownika. Dotykasz teraz myszy? Proszę przestań! Nie używaj myszy. Po prostu naciśnij Ctrl + S, a wszystko zostanie zapisane.

7. Ctrl + V: Ctrl + V wkleja skopiowane elementy do aktywnego obszaru używanego programu. Użycie ctrl + V w takim przypadku Oszczędza czas i stres związany z kliknięciem prawym przyciskiem myszy i ponownym kliknięciem tylko po to, aby wkleić.

8. Ctrl + W: Ctrl + W służy do zamykania strony, na której pracujesz, gdy chcesz opuścić środowisko pracy. "Jest sposób, w jaki Peace robi to bez użycia myszy. O mój Boże, dlaczego się tego nie nauczyłem? " Nie martw się, mam odpowiedź: Peace naciska Ctrl + W, aby zamknąć aktywne okna.

9. Ctrl + X: Ctrl + X tnie elementy (sprawiając, że elementy znikają z ich pierwotnego miejsca). Różnica między wycinaniem a usuwaniem elementów polega na tym, że w wycinaniu wycinane elementy nie giną na stałe, ale przygotowuje się do wklejenia w innym miejscu wybranym przez użytkownika. Użyj Ctrl + X, gdy myślisz "To nie powinno być tutaj i nie mogę znieść stresu związanego z przepisywaniem lub przeprojektowywaniem tego we właściwym miejscu".

10. Ctrl + Y: Ctrl + Y ponawia cofniętą czynność. Ctrl + Z przywróciło to, czego nie potrzebujesz? Naciśnij Ctrl + Y, aby ponownie go usunąć.

11. Ctrl + Z: Ctrl + Z cofa akcje. Nie możesz znaleźć tego, co wpisałeś teraz lub wstawionego obrazu, nagle zniknął lub omyłkowo go usunąłeś? Naciśnij Ctrl + Z, aby go przywrócić.

12. Alt + F4: Alt + F4 zamyka aktywne okna lub elementy. Nie musisz poruszać myszą, aby zamknąć aktywne okno, po prostu naciśnij Alt + F4, jeśli skończysz lub nie chcesz, aby ktoś, kto przychodził, zobaczył, co robisz.

13. Ctrl + F6: Control plus F6 Nawigacja między otwartymi oknami, umożliwiając użytkownikowi zobaczenie, co dzieje się w aktywnych oknach. Pracujesz w programie Microsoft Word i chcesz się dowiedzieć, czy inne aktywne okno, w którym Twoja przeglądarka ładuje stronę, nadal się rozwija? Użyj Ctrl + F6.

14. F1: Wyświetla okno pomocy. Czy Twój komputer działa nieprawidłowo? Użyj F1, aby znaleźć pomoc, gdy nie wiesz, co dalej zrobić.

15. F12: Umożliwia użytkownikowi wprowadzanie zmian w już zapisanym dokumencie. F12 to skrót do użycia, gdy chcesz zmienić format, w którym zapisałeś istniejący dokument, wpisać hasło, zmienić jego nazwę, zmienić lokalizację pliku lub miejsce docelowe lub wprowadzić inną zmianę












Numer 07 (55) / 2021

Odwiedzin: 40365
Dzisiaj: 4
On-line: 1
Strona istnieje: 1711 dni
Ładowanie: 0.522 sek


[ 2610 ]






Pandemic House Keeping



1.Alt : Alternate Key
2.F : Klawisze Funkcyjne
3.Ctrl : Control Key
4.Shift : Shift Key
5.Win : Klawisz z symbolem Windows
6.Tab : Tabulate Key
7.Num Lock : Number Lock Key
8.Esc : Escape Key
9.Caps Lock : Caps Lock Key


>>> Klawisze Skrótów Windows 10 [PDF] <<<



SŁOWNIKI


• BEZPIECZEŃSTWA
• INTERNETU
• KOMPUTEROWY
• SIECI







Abecadło Shellcodera (III)


Przepełnione bufory na stosie

Powinieneś teraz dobrze rozumieć, co się dzieje, gdy funkcja jest wywoływana i jak wchodzi w interakcję ze stosem. W tej sekcji zobaczymy, co się dzieje, gdy w buforze umieścimy zbyt dużo danych. Po zrozumieniu, co się dzieje, gdy bufor jest przepełniony, możemy przejść do bardziej ekscytującego materiału, a mianowicie wykorzystania przepełnienia bufora i przejęcia kontroli nad wykonaniem. Stwórzmy prostą funkcję, która wczytuje dane wprowadzone przez użytkownika do bufora, a następnie wyprowadza je na standardowe wyjście:

void return_input (void)
{
char array[30];
gets (array);
printf("%s\n", array);
}
main()
{
return_input();
return 0;
}

Ta funkcja pozwala użytkownikowi umieścić w tablicy tyle elementów, ile chce. Skompiluj ten program, ponownie używając preferowanego przełącznika granicznego stosu:

shellcoders@debian:~/chapter_2$ cc -mpreferred-stack-boundary=2 -ggdb
overflow.c -o overflow

Uruchom program, a następnie wprowadź dane wejściowe użytkownika, które zostaną wprowadzone do bufora. Przy pierwszym uruchomieniu wystarczy wpisać dziesięć znaków A:

shellcoders@debian:~/chapter_2$ ./overflow
AAAAAAAAAA
AAAAAAAAAA

Nasza prosta funkcja zwraca to, co zostało wprowadzone i wszystko działa poprawnie. Teraz wstawmy 40 znaków, które przepełnią bufor i zaczną nadpisywać inne rzeczy przechowywane na stosie:

shellcoders@debian:~/chapter_2$ ./overflow
AAAAAAAAAABBBBBBBBBBCCCCCCCCCCDDDDDDDDDD
AAAAAAAAAABBBBBBBBBBCCCCCCCCCCDDDDDDDDDD
Segmentation fault (core dumped)

Zgodnie z oczekiwaniami dostaliśmy segfault, ale dlaczego? Przyjrzyjmy się dokładniej, korzystając z GDB.

Najpierw uruchamiamy GDB:

shellcoders@debian:~/chapter_2$ gdb ./overflow

Przyjrzyjmy się funkcji return_input(). Chcemy przerwać wywołanie gets() i punkt, w którym zwraca:

(gdb) disas return_input
Dump of assembler code for function return_input:
0x080483c4 < return_input+0 >: push %ebp
0x080483c5 < return_input+1 >: mov %esp,%ebp
0x080483c7 < return_input+3 >: sub $0x28,%esp
0x080483ca < return_input+6 >: lea 0xffffffe0(%ebp),%eax
0x080483cd < return_input+9 >: mov %eax,(%esp)
0x080483d0 < return_input+12 >: call 0x80482c4 <_init+40>
0x080483d5 < return_input+17 >: lea 0xffffffe0(%ebp),%eax
0x080483d8 < return_input+20 >: mov %eax,0x4(%esp)
0x080483dc < return_input+24 >: movl $0x8048514,(%esp)
0x080483e3 < return_input+31 >: call 0x80482e4 <_init+72>
0x080483e8 < return_input+36 >: leave
0x080483e9 < return_input+37 >: ret
End of assembler dump.

Widzimy dwie instrukcje "call", dla gets() i printf(). Możemy również zobaczyć instrukcję "ret" na końcu funkcji, więc umieśćmy punkty przerwania przy wywołaniu gets() i "ret":

(gdb) break *0x080483d0
Breakpoint 1 at 0x80483d0: file overflow.c, line 5.
(gdb) break *0x080483e9
Breakpoint 2 at 0x80483e9: file overflow.c, line 7.

Teraz uruchommy program, aż do naszego pierwszego punktu przerwania:

(gdb) run
Breakpoint 1, 0x080483d0 in return_input () at overflow.c:5
gets (array);

Przyjrzymy się układowi stosu, ale najpierw przyjrzyjmy się kodowi funkcji main():

(gdb) disas main
Dump of assembler code for function main:
0x080483ea < main+0 >: push %ebp
0x080483eb < main+1 >: mov %esp,%ebp
0x080483ed < main+3 >: call 0x80483c4 < return_input >
0x080483f2 < main+8 >: mov $0x0,%eax
0x080483f7 < main+13 >: pop %ebp
0x080483f8 < main+14 >: ret
End of assembler dump.

Zauważ, że instrukcja po wywołaniu return_input() jest pod adresem 0x080483f2. Rzućmy okiem na stos. Pamiętaj, że jest to stan stosu przed wywołaniem gets() w funkcji return_input():

(gdb) x/20x $esp
0xbffffa98: 0xbffffaa0 0x080482b1 0x40017074 0x40017af0
0xbffffaa8: 0xbffffac8 0x0804841b 0x4014a8c0 0x08048460
0xbffffab8: 0xbffffb24 0x4014a8c0 0xbffffac8 0x080483f2
0xbffffac8: 0xbffffaf8 0x40030e36 0x00000001 0xbffffb24
0xbffffad8: 0xbffffb2c 0x08048300 0x00000000 0x4000bcd0

Pamiętaj, że spodziewamy się zobaczyć zapisany EBP i zapisany adres zwrotny (RET). Pogrubiliśmy je w powyższym zrzucie dla jasności. Widać, że zapisany adres powrotu wskazuje na 0x080483f2, adres w main() po wywołaniu return_input(), czego oczekiwaliśmy. Teraz kontynuujmy wykonywanie programu i wprowadźmy nasz 40-znakowy ciąg:

(gdb) continue
Continuing.
AAAAAAAAAABBBBBBBBBBCCCCCCCCCCDDDDDDDDDD
AAAAAAAAAABBBBBBBBBBCCCCCCCCCCDDDDDDDDDD
Breakpoint 2, 0x080483e9 in return_input () at overflow.c:7
7 }

Więc natrafiliśmy na nasz drugi punkt przerwania, instrukcję "ret" w return_input(), tuż przed powrotem funkcji. Spójrzmy teraz na stos:

(gdb) x/20x 0xbffffa98
0xbffffa98: 0x08048514 0xbffffaa0 0x41414141 0x41414141
0xbffffaa8: 0x42424141 0x42424242 0x42424242 0x43434343
0xbffffab8: 0x43434343 0x44444343 0x44444444 0x44444444
0xbffffac8: 0xbffffa00 0x40030e36 0x00000001 0xbffffb24
0xbffffad8: 0xbffffb2c 0x08048300 0x00000000 0x4000bcd0

Ponownie pogrubiliśmy zapisany EBP i zapisany adres zwrotny - zauważ, że oba zostały nadpisane znakami z naszego ciągu - 0x44444444 jest szesnastkowym odpowiednikiem "DDDD". Zobaczmy, co się stanie, gdy wykonamy instrukcję "ret":

(gdb) x/1i $eip
0x80483e9 : ret
(gdb) stepi
0x44444444 in ?? ()
(gdb)

Ups! Nagle wykonujemy kod pod adresem podanym w naszym ciągu. Spójrz na rysunek , który pokazuje, jak wygląda nasz stos po przepełnieniu tablicy.



Wypełniliśmy tablicę 32 bajtami i kontynuowaliśmy. Napisaliśmy przechowywany adres EBP, który jest teraz słowem zawierającym szesnastkową reprezentację DDDD. Co ważniejsze, nadpisaliśmy RET innym słowem DDDD. Gdy funkcja zakończyła działanie, odczytała wartość przechowywaną w RET, która jest teraz 0x44444444, szesnastkowy odpowiednik DDDD, i próbowała przeskoczyć do tego adresu. Ten adres nie jest prawidłowym adresem lub znajduje się w chronionej przestrzeni adresowej, a program zakończył działanie z błędem segmentacji




Zostań Developperem iOS


• Junior Developper
• Middle Developper
• Senior Developper




MongoDB - 50 "Magicznych" Sztuczek




TypeScript w 50 Lekcjach



• Lekcja I : Czerwone linie faliste
• Lekcja II : Polowanie na błędy
• Lekcja III : Typy
• Lekcja IV : Dodawanie typów za pomocą JSDoc
• Lekcja V : Pliki deklaracji typów
• Lekcja VI : Pliki deklaracji otoczenia
• Lekcja VII : Narzędzia
• Lekcja VIII : Kompilowanie TypeScript
• Lekcja IX : any, wszystko OK?
• Lekcja X : Kontrola przepływu
• Lekcja XI : Typowanie obiektów
• Lekcja XII : Pas narzędziowy typu obiektu
• Lekcja XIII : Typowanie klas
• Lekcja XIV : Interfejsy
• Lekcja XV : Funkcja wyszukiwania
• Lekcja XVI : Funkcja wywołania zwrotnego
• Lekcja XVII : Zastępowalność
• Lekcja XVIII : This i That
• Lekcja XIX : Pasek narzędziowy typu funkcji
• Lekcja XX : Przeciążanie funkcji
• Lekcja XXI : Funkcje generatorów
• Lekcja XXII : Modelowanie danych
• Lekcja XXIII : Poruszanie się w przestrzeni typów
• Lekcja XXIV : Poruszanie się w przestrzeni typów
• Lekcja XXV : Związki dynamiczne
• Lekcja XXVI : Klucze obiektów i predykaty typów
• Lekcja XXVII : Na dole: never
• Lekcja XXVIII : undefined i null
• Lekcja XXIX : Nie wiem, czego chcę, ale wiem, jak to zdobyć
• Lekcja XXX : Ogólne ograniczenia
• Lekcja XXXI : Praca z kluczami
• Lekcja XXXII : Ogólne typy mapowane
• Lekcja XXXIII : Zmapowane modyfikatory typu
• Lekcja XXXIV : Wiązanie typów ogólnych
• Lekcja XXXV : Wartości domyślne typu ogólnego
• Lekcja XXXVI : Jeśli This, Then That
• Lekcja XXXVII : Łączenie przeciążeń funkcji i typów warunkowych
• Lekcja XXXVIII : Rozstrzygające warunki warunkowe
• Lekcja XXXIX : Filtrowanie z użyciem never
• Lekcja XXXX : Tworzenie typów pomocniczych
• Lekcja XXXXI : Słowo kluczowe infer
• Lekcja XXXXII : Praca z wartością null
• Lekcja XXXXIII : Promisfy
• Lekcja XXXXIV : JSONify
• LekcjaXXXXV : Definicje usług
• Lekcja XXXXVI : Silnik DOM JSX, część 1
• Lekcja XXXXVII : Silnik DOM JSX, część 2
• Lekcja XXXXVIII :Rozszerzanie obiektu, część 1
• Lekcja XXXXIX : Rozszerzanie obiektu, część 2
• Lekcja L : Epilog







>>> OFERTA SPECJALNA <<<


Zostań UX Designerem!



User experience, UX - całość wrażeń, jakich doświadcza użytkownik podczas korzystania z produktu. Pojęcie to używane jest najczęściej w odniesieniu do oprogramowania, serwisów internetowych lub urządzeń elektronicznych. W kontekście interakcji człowiek-komputer stosowane było już w latach 70. XX wieku.   Wikipedia

Zainteresowany? Wypełnij te dwa pola, skontaktuję się z Tobą na pewno.

Imię i Nazwisko:



E-Mail:



Wybierz : UX / Flutter/Dart