art2 

po polsku


Program Adware



Spis tre¶ci:

1. Tre¶æ ogólna

2. Sztuczki anty-crackingowe



1. Tre¶æ ogólna

Ostatnio ten typ programów sta³ siê do¶æ popularny. Zasada dzia³ania jest prosta:
program jest darmowy, ale w zamian za to, jest wy¶wietlany banner reklamowy. Przyk³adem
takiego programu jest GaduGadu. Czy nam siê to podoba czy nie w tym programie jest
wy¶wietlany banner reklamodawcy (albo i nie, jak siê pobawimy hexWorkshopem ;-). W tym
tek¶ci mam zamiar zademonstrowaæ jak w VB mo¿na napisaæ taki programik. Oczywi¶cie
aby zrozumieæ cokolwiek z tego, co bêdê glêdzi³ bêdziesz musia³ znaæ siê na
tworzeniu stron WWW i znaæ sk³adniê HTMLa (nie musisz byæ guru, ale musisz siê
trochê orientowac w tych tematach). Zwróæ uwagê, ¿e programy Adware s± to g³ównie
programy internetowe, nie spotka³em siê z programem graficznym, który by zawiera³
banner reklamowy ;-) Co daje pisanie programów Adware ??? Byæ mo¿e nic, ale z drugiej
strony jak program bêdzie popularny to bêdziesz móg³ sprzedawaæ reklamê (mo¿esz
emitowaæ banner do swojej strony zwiêkszaj±c jej odwiedzalno¶æ).



No wiêc do dzia³a. Najpierw stwórzmy nowego forma i dajmu na niego kontrolkê
WebBrowser (prawym przyciskiem myszy klikamy na palecie kontrolek, rozwija siê menu i
wybieramy Components potem otwiera siê okienko Components, klikamy w
przycisk browse i wybieramy plik c:\windows\system\SHDOCVW.DLL) Jest to
kontrolka s³u¿±ca do wy¶wietlania stron WWW (co¶ takiego jak 80% powierzchni internet
explorera ;-). To w tej kontrolce bêdzie emitowana reklama. Nanie¶my kontrolkê na forma
(okre¶lmy rozmiary 400x50 pixeli czyli u mnie 6000x750 twipów). No i mamy okienko, w
którym bêdzie emitowana reklama ;-) Ja kontrolce nada³em nazwê Bann. Teraz w form load
piszemy kod:



Dim W As String

W = App.Path + "\reklama.htm"

Bann.Navigate (W)



Ten kawa³ek kodu powoduje za³adowanie strony WWW. Na razie ten plik jest na dysku,
gdy¿ piszemy program na dysku i kilka razy bêdziemy modyfikowaæ plik reklama.htm zanim
bêdzie on mia³ ostateczny kszta³t. Pó¼niej mo¿esz zmieniæ to np na
http://www.cos.pl/twojastrona/reklama.htm Oczywi¶cie w katalogu naszego programu musimy
utowrzyæ plik reklama.htm o zawarto¶ci:



<a href="http://adres.reklamowanej.strony"
target="blank"><img scr="http://sciezka obrazka" width=400
height=50></a> border=0>



Nie bêdê tutaj t³umaczy³ co te tagi htmla oznaczaj±, gdy¿ powinien¶ to
wiedzieæ. Je¶li nie wiesz, to siê doucz, bo potem bêd± trudniejsze tagi ;-) Dobra,
uruchamiamy program i niespodzianka !!! Niestety, ale hmmm banner jest jakby pokazywany 10
pixeli od góry kontrolki i pojawiaj± siê ochydne scrolle. Po wielu mêkach doszed³em
do wniosku, ¿e efekt psuje nie wadlowo¶æ kontrolki a marginesy !!! Tak wiêc w pliku
HTM musimy zdefioniowaæ rozmiary marginesów na 0. Oto zawarto¶æ pliku reklama.htm




<html>

<head>

<title>Reklama</title>

</head>

<body frameborder="no" scroll="no" aLink="#FFFF00"
bgColor="#C0C0C0" link="#00FF00" topmargin="0"
leftmargin="0"><p><a href="http://vb4all.canpol.pl"
target="_blank"><img src="baner.gif" width="400"
height="50" border="0"></a></p>

</body>

</html>




Kolor t³a ustawmy wed³ug w³asnego gustu. Teraz marginesy s± ustalone, wszystko
wygl±da ³adnie, ale pojawia siê ma³a niedoróbka: otwórz banner jest ³adowany z
jakiego¶ serwera. Czasami to ³adowanie banner mo¿e trwaæ kilkana¶cie sekund (hmmm nie
b±d¼my pesymistami, ale trzeba za³o¿yæ, ¿e o 17-tej jest wolne ³±cze). No i
brzydko wygl±da szare t³o bez bannera. Pasowa³o by zrobiæ jaki¶ napis w stylu
"Proszê czekaæ, trwa ³adowanie bannera". Dla osób znaj±cych HTMLa nie jest
to trudne, gdy¿ mo¿na zrobiæ plik o rozmiarach 400x50 pixeli i daæ go jako
"tapetê" strony i bêdzie taki banner pokazywany dopóki nie za³aduje siê
banner reklamowy. W efekcie plik reklama.htm bêdzie tak wygl±da³:



<html>

<head>

<title>Reklama</title>

</head>

<body frameborder="no" scroll="no" aLink="#FFFF00"
bgColor="#C0C0C0" link="#00FF00" topmargin="0"
leftmargin="0" background="tlo.gif"><p><a href="http://vb4all.canpol.pl"
target="_blank"><img src="baner.gif" width="400"
height="50" border="0"></a></p>

</body>

</html>



Mam nadziejê, ¿e uda³o ju¿ Ci siê skleciæ jak±¶ ³adn± reklamê. Oczywi¶cie
nic nie stoi na przeszkodzie, aby rozbudowaæ tak plik HTM, aby by³ emitowany np.
wylosowany przez skrypt banner.



mo¿esz zassaæ przyk³adowy program adware



2. Sztuczki anty-crackingowe

No i ju¿ mamy ca³kiem ³adnie wygl±daj±cy program z reklam± :-) Jest w
miarê profesionalny, ale poniewa¿ doszed³e¶ do tego miejsca to uwa¿asz, ¿e text jest
ciekawy i nie chcesz aby siê skoñczy³, wiêc jeszcze trochê pofizolujê. Pewnym
problemem s± crackerzy, czyli osoby, które bêd± próbowa³y jako¶ usun±æ ten
banner. Akurat nie wiem, na jakiej zasadzie dzia³a program do usuwania ca³kowicie
bannera z GG, ale ja sam w 10 minut zast±pi³em banner w³asnym. Po prostu w³±czy³em
HexWorkshop i poszuka³em ci±gu http:// i znalaz³em ci±g znaków
http://www.<ocenzurowano>reklama.htm i jak nie trudno siê domy¶leæ zamieni³em
ten ci±g swoim ci±giem znaków :-) Teraz mam GG z w³asnym bannerem :-) Z programami w
VB bêdzie trochê trudniej, bo stringi s± w Unicode a nie w AsciiZ. I musimy szukaæ
ci±gu znaków: 68 00 74 00 74 00 70 00 3A 00 2F 00 2F (k³ania siê znajomo¶æ kodu szesnastkowego ;-) No, ale i to nie by³o
dla nas trudne, bo potem mo¿emy z HexWorkshopa pozmieniaæ ten adres na w³asny. I
pasowa³o by nasz EXE'k zabezpieczyæ, aby nie tak ³atwo mo¿na by³o zcrackowaæ nasz
program (nie bierzmy przyk³adu z programistów GaduGadu, we¼my przyk³ad z programistów
Opery ;-) Hmm najpro¶ciej zabezpieczyæ nasz program robi±æ co¶ takiego:



piszemy w module:

Public A1 as string

Public A2 as string

Public A3 as string

Public A4 as string

Public A5 as string



Natomiast w ró¿nych miejscach kodu piszemy te linie

A1="http"

A2="://"

A3="www."

A4="serwer/user"

A5="banner.htm"



Oczywi¶cie te kawa³ki kodu rozmieszczamy, najlepiej w form_load co kilka linii
jakiego¶ kodu wstawiamy któr±¶ z tych linii. Tu¿ przed Bann.Navigate
piszemy: W=A1+A2+A3+A4+A5 Chodzi o to, aby nasz
cracker nie znalaz³ w jednym miejscu ³adnie http://www.serwer/user/banner.htm tylko o
to, aby ten adres by³ rozrzucony po ca³ym pliku. Mo¿na pokusiæ siê o zakodowanie tego
ci±gu znaków, ale s± osoby, które u¿ywaj±c debbugera odkoduj± ten adres (na takie
rzeczy nie ma lekarstwa, s± sztuczki antydebugowe, ale one dzia³aj± gdy piszemy
programy w asemblerze).



Hmmm ju¿ wyczerpa³em temat. Aha i nie popadajmy w maniê, nie róbmy reklam ile
wlezie ;-) Powa¿nie piszê. Reklama powinna byæ estetycznie osadzona i nie mo¿e
zmniejszaæ funkcionalno¶ci programu (zobacz, jak jest umieszczona reklama w GG a teraz
wyobra¼ sobie, co by by³o, gdyby w wordzie pojawi³ siê dodatkowy Toolbar o szeroko¶ci
60 pixeli na którym by³a by emitowana reklama ;-)



Jelcyn

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • pajaa1981.pev.pl