Krótki news: kolejny stream będzie za 2 dni, w czwartek 11.02.2016 i rozpocznie się o 18:45 (główny temat pewnie o 19:00; potrwa do około 20:30). Tym razem wypróbujemy twitch'a, więc stream będzie dostępny na http://www.twitch.tv/GynvaelPL. Jeśli chodzi o temat, to będę kontynuował wątek dla początkujących, czyli kółko i krzyżyk (jako przykład czegoś obiektowego) - ostatnio skończyłem prostą wersję konsolową, a teraz do zaproponowanej architektury podepnę TCP/IP, oraz pobawię się trochę konsolą Windowsa, żeby wersja konsolowa wyglądała trochę lepiej (ta część prawdopodobnie będzie w C++, ale potem pokaże jak to w Pythonie zrobić też). Wątek dodawania komendy do cmd będę kontynuował na kolejnym streamie (pewnie w weekend).

Comments:

2016-02-09 14:09:04 = Nick
{
Hey Gyn, bedzie dostepne nagranie ze streamu?
}
2016-02-09 17:30:21 = Qc
{
@Nick
https://www.livecoding.tv/gynvael/videos/
}
2016-02-09 21:15:35 = nik
{
@Nick
nagrania są na https://www.livecoding.tv/gynvael/videos/
}
2016-02-10 21:25:33 = Tomipnh
{
@Gynvael
to w końcu używasz livecoding czy twitcha?
}
2016-02-10 21:50:07 = Gynvael Coldwind
{
@Nick
Tak. Albo na Twitchu, albo na YT. Albo na obu :)

@Tomipnh
Póki co testuje platformy. Ostatnio kilka osób mówiło, że im livecoding.tv laguje, więc chcę sprawdzić jak będzie na Twitchu, a potem np. na YT. A potem zdecyduje gdzie zostaje.
}
2016-02-12 07:12:52 = dygus
{
Gyn, proponuję nie schodzić do poziomu absolutnego laika - wbrew pozorom nauka programowania kogoś kto nie umie nic lub prawie nic jest niesamowicie trudna.
https://www.reddit.com/r/learnprogramming/comments/42urli/when_you_know_the_basics_but_you_still_cant_code/ <- to jest prawdziwy problem i mnóstwo ludzi wykłada się na etapie gdy łyknęli 1-3 książki o podstawach danego języka + coś o np. wzorcach projektowych, a nie wiedzą jak zaplanować i kodzić coś większego względnie "dobrze i czytelnie". Proponowałbym założyć taki poziom wiedzy widzów ;)
}
2016-02-13 12:53:20 = rm
{
Jest szansa przy kolejnym streamie z RE aby zreversować jakiś malware? To ciekawy temat ;).
}
2016-02-13 15:15:21 = dgdg
{
Hej, jak się nazywa ten program, który "dobajerza" windowsowe cmd? Mówiłeś coś na ten temat, na pierwszym live, a nie mogę teraz odnaleźć.

Cheers.
}
2016-02-13 23:47:31 = helktuy
{
Gyn, mam pytania do streamu o explotacji programu na linuksa. Nie daje mi spokoju jedno, podglądałeś sobie maps w /proc i coredump w gdb obie rzeczy, w teorii, są na maszynie do której nie masz dostępu. Na CTFach macie dostęp nie wiem, konto usera czy cóś ?
}
2016-02-14 00:27:42 = Gynvael Coldwind
{
@dygus
Dobra uwaga. Staram się nie tłumaczyć super prostych rzeczy, ale czasem się zagalopuje ;)

@rm
Hmm, dobre pytanie... Kiedyś tego dużo reversowałem, ale teraz nawet środowiska do malware'u nie mam. Ale można pomyśleć :)

@dgdg
ConEmu :)

@helktuy
Na większości CTFów otrzymuje się binarkę exploitowanego serwisu, co pozwala na postawienie tego serwisu u siebie i debugowanie go lokalnie (co też robiłem na streamie).
Przy czym trzeba z tym też uważać, bo środowisko zdalne (serwer CTFowy) i lokalne mają zwyczaj się czasem różnić w niektórych aspektach (wersje bibliotek*, etc), więc niektóre rzeczy, nawet jeśli zadziałają lokalnie, to zdalnie już niekoniecznie - osobiście preferuje czasem od razu debugować zdalnie exploit (ofc wtedy bez debuggera, ale jest trochę prostych sztuczek, które pozwalają mimo wszystko dojść do tego czy coś działa czy nie).

* - Bywa, że stwierdzenie wersji bibliotek na serwerze CTFowym jest dość istotne - wtedy często przy okazji innych zadań które dają shella się te biblioteki pobiera. Ew. mając fragmenty adresów (np. adresów powrotu ze stosu) można też dojść co to za wersja (vide http://j00ru.vexillium.org/blog/24_03_15/dragons_ctf.pdf slajdy 67-74).

Zdarzają się CTFy (np. CODEGATE) na których dostaje się shella na serwerze z zadaniem (przy czym wtedy bardziej chodzi o local priv escal), lub wręcz identyczne środowisko (tak jest na CTFach z gatunku Attack-Defense).

Dodam jeszcze, że można też znaleźć bug i go wyexploitować bez dostępu do binarki, ale wtedy jest trochę więcej zabawy.
}

Add a comment:

Nick:
URL (optional):
Math captcha: 10 ∗ 3 + 8 =