Close
Faqja 3 prej 4 FillimFillim 1234 FunditFundit
Duke shfaqur rezultatin 21 deri 30 prej 35
  1. #21
    mos e luaj; I DEBUAR! Maska e qoska
    Anëtarësuar
    17-05-2004
    Vendndodhja
    tirane
    Postime
    837
    Ne forum theksojme/korigjojme/mesojme dhe mbi te gjitha debatojme ose me mire shkembejme eksepriencat tona!

    Ne po flasim per siguri, nese ti do te zgjerosh kontekstin e bisedes per te gjetur nje zgjidhje, kjo eshte menyra jote.
    Por duhet te kesh parasysh qe tejkalosh API eshte dicka jashtezkonisht e veshtire mund te them me e veshtire sesa "crakimi" pasi jo cdo gje eshte e dokumentuar poshte tij dhe e garantuar te jete e njejte ne te gjitha platformat/versionet e Windows. Normalisht ti si biznesmen nuk e do kete kosto dhe firma shume me te medha as nuk i besojne asaj kostoje sepse perfundon duke shkruar sistem shfrytezimi tendin, nder te tjera duke marre ankesa nga perdoruesit sic jane disa rootkite te famshme te perdorura nga korporata gjigande dhe sot e kesaj dite jane terhequr nga tregu.

    Te hedhesh balte mbi "crakimin" kur po supozoj qe si ke hedhur as syte sesi punon nje debugger nga ana konceptuale(po supozoj) eshte e papranueshme. Duhet te dish shume mire qe Windows NT ka nje sherbim(servis) qe eshte i specializuar mbi debug dhe te gjithe debugerat e famshem ndertuar per "user-mode" perdorin ate pasi ofron shume lehtesira. Nje nga to eshte dhe ai i leximit te formatit PE qe nuk ke mundesi ti si programues mos ta perdoresh me tool te Microsoft se perndryshe i bie te shkruash gjysmen e funksioneve ndihmese te Windows dhe bashke me te hedh poshte sigurine qe te jep Windows si sistem ne vetvete.

    Jam shume dakort qe leximi i asm eshte i veshtire por jo i pamundur, ka njerez qe lexojne "opcode" nepermjet hexeditor-ve dhe jo me assembler te paster qe mos harro para 10-15 vitesh ka qene gjuha me e perdorur per te programuar ne kompjuter(mban mend njeri DOS?!).
    Persa i perket sasise se byte te instruksioneve, me duhet te qesh, se e vetmja teme ne te cilen ata mund te perdoren jane ne "ditributed application" ose "multithreaded" me subjekt "Atomic operations" keshtu qe s'me duket e pershtatshme per ketu.

    Te mos keqkuptohemi ka menyra per te krijuar siguri por jo te plote dhe ne per ate pjese te pambuluar po flasim. Pasi gjithmone do te kete nje vend ku "state-machine" i jot do te ndalet e te shohe me nje testim te thjeshte se cfare duhet te beje dhe kjo eshte pika me e dobet e gjithe problemit.
    Ana tjeter e medaljes, sigurisht per te ndertuar dicka shume te sigurte, eshte kalimi ne assembler dhe te mos i besosh kompilatoreve, ka histori te tilla neper libra crakimi/hakimi per truke jashtezkonisht te zgjuara per vete faktin se ai qe i kishte shkruar njihte jashtezakonisht mire arkitekturen ku po shkruante.

    Gjithsesi une e konsideroj veten nje "white-hat" dhe me vjen keq deri diku qe disa mendje goxha te zgjuara ne vend ta perdorin per mire talentin e tyre e cojne dem duke sfiduar ne kete lemi. Por si gjithmone, kjo eshte pershtypja ime.

    Edhe une besoj se ajo qe shkruajme ne forum ngelet por problemi eshte qe te mos mundohemi me zor te leme ate qe duam ne, personalisht, por ate cka eshte me e mira e zgjedhur nga ne!
    Ndryshuar për herë të fundit nga edspace : 03-04-2007 më 20:27 Arsyeja: Zgjuarsi e tepruar

  2. #22
    Analog Brain Maska e josif
    Anëtarësuar
    26-02-2004
    Vendndodhja
    madagaskar
    Postime
    245
    universiteti i purdue, po zhvillon nje sistem hardware-i mbrojtes ndaj sulmeve klasike te stack-ut (buffer overflow).

    per ata qe jane te interesuar:

    http://www.smashguard.org/
    He walks among us, but He is not one of us ...

  3. #23
    i/e regjistruar
    Anëtarësuar
    17-11-2006
    Postime
    81
    Tek lexoj argumentat e tuaj qoska, ndoshta duhej te me vinte mua per te qeshur. Por ne fakt nuk po qesh, madje ndihem disi i trishtuar per kohen qe kam humbur duke u perpjekur te argumentoj - argumentim qe bazohej mbi supozimin (nga ana ime) se bashkebiseduesit e mi kishin nje shkalle te caktuar njohje (supozim qe me sa duket qenka i gabuar).

    Me perjashtim te nje prej argumentave te tua te gabuar (te gjithe argumentat e tu ishin te tille) i cili eshte ne fakt nje keqkuptim qe e kane shume vete, dhe qe ja vlen te sqarohet, nuk do humbas kohe me gjithe budallalleqet e tjera.

    Konkretisht, programet e kompiluara (pra file-t) permbajne instruksione qe ekzekutohen direkt nga procesori - asnje API mes tyre (perjashtim ben NET, por ne s'po flasim per te).
    Keshtu qe nuk ka asnje API per t'u "tejkaluar" dhe as ndonje problem portabiliteti midis versioneve te ndryshem te Windows-it (ka problem portabiliteti mes procesoreve te ndryshem, por ky eshte nje problem per c'do lloj programi (me perjashtim te NET))

    Windows-i ben vetem 2 gjera (pervecse ofron nje mori funksionesh te gatshem):
    e para ndersa e ngarkon file-n ku gjendet programi ne memorje, "fikson" pointerat ne "imported functions", dhe e dyta, sa here procesori perpiqet te ekzekutoje instruksione qe akoma nuk jane ngarkuar ne memorje (duke gjeneruar nje Access violation) windows-i i "kap" keto "exception-e", ngarkon ne memorje instruksionet qe akoma s'ishin ngarkuar, dhe i "thote" procesorit ta provoje serisht.
    Pertej ketyre dy momenteve, programi eshte gjithe kohen direkt ne kontakt me procesorin, asgje tjeter mes tyre.
    Madje, per kuriozitet, edhe fakti qe disa instruksione te procesorit jane "priviledged" (dhe s'mund te ekzekutohen nga programet ne "user mode") eshte nje sherbim qe e ofron vete procesori. Gjithashtu procesori ofron ne pjesen derrmuese implementimin e "virtual memory" qe eshte pergjegjes per "izolimin" e programeve. Procesori ofron gjithashtu edhe shume "feature" te tjera qe padrejtesisht i atribohen Windows-it.

  4. #24
    mos e luaj; I DEBUAR! Maska e qoska
    Anëtarësuar
    17-05-2004
    Vendndodhja
    tirane
    Postime
    837
    Ok Neritan mbase duhet te ballafaqohemi se kush ka me shume njohuri mbi sisteme operative dhe per arkitekture procesorash!(apo duhet te ballafaqojme sesa arrijme te krijojme konfuzion mbi njeri-tjetrin)

    Gjithsesi per te argumentuar me mire "gabimet" e mia duhet te jesh pak me konkret.
    Duhet ta dish mire qe as procesori nuk ben dot pa OS dhe as OS nuk ben do pa procesorin.

    Te lutem me trego nje program qe ekzekuton pa ndihmen e API(kod i gatshem qe ekzekutohet nga procesori ne Ring 0) shkrim/lexim skedari dhe une do te them qe procesori e garanton te gjithe "virtual memory"-in vete.
    Te ngaterrosh segmentet dhe MMU me virtual memory me duket pak aventuriere. Por te lutem me thuaj se kush eshte kali dhe kush kaloresi ne aktoret OS dhe procesor, mbasi te mbarosh me thuaj se kush nga supozimet e mia me siper permendi qe programi nuk ekzekutohet direkte ne procesor. Ndoshta ajo qe s'ke kuptuar eshte qe te besh lodra me siguri ti nuk ke mundesi ti besh pa OS me formatet e permendura ne postimet me perpara(per te hequr mundesi "evazioni" te ekzekutosh kod ne ring0 pa marre leje sistemit operativ ose thjesht ta njofotsh ate se ky kod po ekzekutohet. Sigurisht ne menyra te perdorura gjere!).

    Te lutem ca argumenta me bindes dhe sic i thone "proof-of-concept" meqe je me i sigurte se une ne ato qe thua!

    Sic kam thene me perpara nuk po "akuzoj" por po debatoj dhe pretendoj te njejten gje. Rruges me thuaj ose perifrazo konceptin per te cilin po flasim sepse te krijosh konfuzion per konceptet e perdorura thjesht sepse nuk ke nje pergjigje te sakte nuk me duket e drejte.

  5. #25
    i/e regjistruar
    Anëtarësuar
    12-06-2006
    Vendndodhja
    Redmond, WA, USA
    Postime
    181
    Citim Postuar më parë nga Neritan Hyso
    Tek lexoj argumentat e
    Neritan gabon.

  6. #26
    i/e regjistruar
    Anëtarësuar
    17-11-2006
    Postime
    81
    Nuk dua te riperseris ato qe kam shkruar me pare, por duhet te dish qe edhe "ring"-et jane nje "feature" e procesorit. I vetmi sugjerim qe mund te bej eshte te lexosh ndonje liber per asemblerin (nje liber shume i mire eshte "The Art of Programing in Assembler" (apo dicka e tille)).

  7. #27
    mos e luaj; I DEBUAR! Maska e qoska
    Anëtarësuar
    17-05-2004
    Vendndodhja
    tirane
    Postime
    837
    E kam lexuar dhe prandaj po te them qe ma demonstro ato qe ti supozon me siper.
    Eshte e vertete qe procesori ofron shume por dikush duhet te bashkrendoj se cfare behet.
    Problemi qe nje instuksion syscall ose int 0x80(pak me i vjeter) "****"-et nga OS me te cilin kontrollohet GDT keshtu qe pa i bere "live patch" OS mbi kete nuk mund te kalosh nga nje ring ne tjetrin.(po flasim gjithmone per "user-level code" pasi po ke kaluar ne kernel level ti je zoti i procesorit dhe ska gje qe te ndalon )
    Gjithsesi seicli me te vetat dhe seicili sipas menyres se vete i thone kesaj!

    Me te mira

  8. #28
    i/e regjistruar
    Anëtarësuar
    17-11-2006
    Postime
    81






    Mesiper jane disa fragmente nga dokumentacioni i Intelit. I vetmi koment i imi lidhur me to eshte se ne asnje rast teksti nuk i referohet Windows-it apo ndonje sistemi tjeter operimi specifik.


    Dikush me akuzoi se flas pa dhene argumenta. Ok, por te pakten une kam shkruar nja dy rreshta kod ne kete kollone (ne mbeshtetje te argumentave te mi). Dhe nuk di se cfare argumentash kane dhene gjitha ata qe jane mjaftuar vetem me fraza te tilla: “Je naiv”, “E ke gabim”, “Skema jote eshte naive”, “Nuk mund te behet, se po te behej, do ta kishin bere te tjeret”, etj, ejt.

    Ndoshta pa-pajtueshmeria e mendimeve i detyrohet edhe keqkuptimeve. Bie fjala, une s’e ve ne dyshim qe nje proces iniciohet nga sistemi i operimit, gjithashtu procesi mbart nje “access token”, i cili percakton acesin qe ka ky proces mbi objektet qe menaxhohen nga sistemi i operimit (file, regjistri, etj).
    Gjithashtu, ndersa “ring”-et jane nje “feature” e procesorit, “freret” per kontrollimin e tyre i ka sistemi i operimit. Por ne asnje rast fragmentet e kodit, apo argumentat qe kam sjelle, nuk presupozonin qe programi duhej te ekzekutohej ne “ring 0”. Te gjithe fragmentet e kodit qe kam sjelle, i kam provuar me pare per te pare nese funksionojne apo jo, dhe gjithca funksionon.

    Edhe terminologjia mund te kete qene burim keqkuptimesh. Psh. me Anglishten time une API-n e kam perkthyer si Application Programming Interface – me nje fjale nje teresi (bashkesi) funksionesh qe sherbejne si interface (nderfaqes) per te zgjidhur nje problematike te caktuar, apo e thene ndryshe per te programuar nje aspekt te caktuar te nje aplikacioni. Windows-i ofron me dhjetera bashkesi te tilla funksionesh (API) qe targetojne aspekte te ndryshme te programimit.
    Ne botekuptimin tend me te “gjere” qoska, API na qenka “kod i gatshem qe ekzekutohet nga procesori ne Ring 0”.
    Pa dyshim nje ndryshim i tille ne kuptimin e terminologjise eshte burim keqkuptimi, pasi ne perkufizimin tend API s’mund te “kapercehet”, por ne perkufizimin qe bera une mesiper, pjsa derrmuese e API-t mund te “kapercehet me nje kembe”. Bie fjala une s’kam pse i fus qe te gjitha funksionet brenda ne .exe apo .dll. Funksione kritike (te kompiluara) mund te futen ne nje file “propietary”, dhe te shfrytezohen nga programi me nje shkalle shume me te larte diskrecioni. Duke qene brenda nje file “propietary”, funksionet s’jane vecse numra pa pike kuptimi. I vetmi moment kur keta numra marrin kuptim, eshte mbasi programi t’i ngarkoje ata ne memorje, dhe te adresoje procesorin ne offsetin e sakte, moment ky qe mund te ndodhe shume vone gjate ekzekutimit te nje programi, dhe qe zgjat vetem nje fraksion. Kompleksiteti per ta lexuar kete kod, shoqerohet nga nje kompleksitet akoma me i madh per ta modifikuar ate (me sakte per t’i ruajtur keto modifikime)


    Tani, une e di se sa e veshtire eshte te sigurosh jetesen ne Shqiperi duke krijuar programe, ashtu sikurse e di se sa e PA-MUNDUR eshte te sigurosh jetesen duke krakuar programe. Keshtuqe une i mirekuptoj reagimet emocionale te krakerave ndaj argumentave te mi. Ne fund te fundit, iluzioni i tyre se mund te krakojne gjithcka, dhe se nese nuk e bejne nje gje te tille, eshte sepse jane njerez “etik” - eshte i vetmi shperblim qe mund te marrin nga puna e tyre.

    Ashtu sikurse nuk me habit kategoria tjeter, te cilet pamundesine e tyre per te realizuar dicka, e justifikojne permes pergjithesimit “Nuk behet!”.

    Sot realizohen gjera qe perpara disa viteve apo dekadave ishin te pa-mundura. C’ka me ben te besoj se ne vitet qe do vine, do realizohen gjera qe sot “duken te pamundura”. Natyrisht krijuesit e ketyre “gjerave” nuk do mjaftohen me arsyetimin “Kjo gje s’mund te behet, se po te behej, do ta kishin bere te tjeret perpara nesh!”.
    Mund t’ju duket “herezi”, por ja qe ka njerez qe s’duan tja dine fare se cfare thone statistikat, dhe as impresjonohen nga fakti qe nje problem te caktuar s’e ka zgjidhur askush me pare – por aplikojne mbi c’do problem qe u del perpara dijen, arsyen qe buron prej saj, si dhe nje pune te palodhur.

    Ne fillim te kesaj kollone une u perpoqa te sillja disa argumenta teknik/llogjik, dhe gjithe kunder-argumentat qe mora ishin te tipit statistikor. Duke u ndergjegjesuar per “menyren statistikore” te te arsyeturarit te bashkbiseduesve te mi, provova te “sintonohem” ne “frekuencat” e tyre duke sjelle edhe une nje argument statistikor: “Nese programet mund te lexohen ne asm, perse gjithe ky presion per source code?”.
    Cuditerisht, kesaj rradhe kunder-argumentat “ndryshuan frekunece” duke u bere te tipit legal/moral, citoj:
    Spekulimet e tipit: "neqoftese dikush i qaset programit me mjete (tools) tjera (cracking tools) do t'ja bllokoj kompjuterin" nuk pijne uje, sepse shum shpejt do te duheshe te paguash demshperblime te medha ne gjyq.
    qe meqe ra fjala, jane minimalisht idiote.
    Jo ne Shqiperi, por ne asnje vend te Botes, asnje avokat nuk do merrte persiper te prezantonte ne gjygj nje “klient” qe ka zgjedhur te perdore nje kopje pirate. Minimalisht, autori i nje programi mund te thoshte “qe nga momenti qe dikush e ka modifikuar programin tim, ai s’eshte me programi im, dhe une s’mbaj me asnje pergjegjesi per te”. Lere pastaj qe ne c’do rast padia mund te ngrihet vetem kunder atij qe ta shiti, qe ne rastin e nje programi pirat, nuk eshte prodhuesi origjinal.

    Une e cmoj nje debat si nje mekanizem per te zbuluar te verteten, por padyshim efektiviteti i ketij mekanizmi varet shume nga niveli i njohurive te njerezve qe e zhvillojne ate. Intuita me thote se ky debat e ka ezauruar tashme funksionin e tij primar, dhe po degjeneron ne nje mekanizem per imponimin e ideve. Une nuk kam as interes, dhe ca me pak kohe per te humbur, ne imponimin e ideve te mija te tjereve, dhe nga ana tjeter s’ka asnje gjase qe “argumenta” te tipit “e ke gabim” te kene ndonje efekt mbi mua, keshtuqe e gjykoj vazhdimin e metejshem thjesht humbje kohe.

    Ne fund te fundit, krakerat le t’i japin zemer vetes me fraza “Asgje s’na ndal ne!”, dhe ata qe s’arrijne te realizojne dot dicka le te ngushellohen me fraza “S’mund te behet!”. Bota eshte e bukur sepse eshte e larmishme.

    Shenim: une kam shpenzuar mbi 2000 ore perpara nje debugeri, dhe vite me pare kam krijuar vete nje “gjuhe programimi” te thjeshte. Por me siguri keto nuk jane asgje krahasuar me ato qe ke krijuar ti qoska, qe meqe ra fjala, cfare ke krijuar?

  9. #29
    mos e luaj; I DEBUAR! Maska e qoska
    Anëtarësuar
    17-05-2004
    Vendndodhja
    tirane
    Postime
    837
    Ti prape nuk je pergjigjur cka te kam kerkuar une(me shkruaj nje komunikim me NTFS pa perdorur API windowsi dhe pa shkruajtur ring 0 code).
    Prandaj te kam kerkuar te sqarosh dhe konceptin.

    Inteli ka dokumentacionin e vet per hardware dhe ne po flisnim per windows gje qe e kufizoi diskutimin ne kete OS.
    Ti mund te fusesh nje file te strukturuar sipas qejfit tend dhe une nuk e kam hedhur poshte si mundesi vetem se nuk te intereson, duke marre parsysh kohen, per te krijuar dicka te tille, hmmm qe i bie te krijosh nje emulator te vogel per ta bere kompatibel per tu ranur ne OS, qe prape do te perfundonte ne konceptin "you don't have security by obscurity"!
    E vertete eshte qe ka devijuar pak nga tema e nisur por duhet te kesh te qarte qe edhe formati i personalizuar mund te thyhet me pak studim.

    Rilexoje dhe njehere te gjithe diskutimin dhe pastaj me shfaq manualin e intelit ne diskutim.

    Me behet qejfi qe ke shkruar nje gjuhe programimi per mua do te ishte me mire ta publikoje kodin te kishin cfare te mesonin njerezit por per mua nuk eshte ndonje veshtiresi e madhe qofte duke perdorur tools si lex dhe yacc!

    Cfare kam bere une heh kam lexuar dhe testuar shume problemi i vetem eshte se nuk kam pasur pergjegjesine per ti ruajtur dhe treguar ne publik gjithsesi ca patch andej kendej neper open-source i kam sa per gallate duke filluar nga ReactOS te cilin ta keshilloj te eksperimentosh sepse ka per sot 80% kompatibilitet me Windows 2k3 ne nderfaqe kerneli dhe duke vazhduar me unix te shume tipeve.

    Normalisht vetem fjalet me siper do te duken shume ajer por crregullesia ime nuk me jep mundeisne te te tregoj cfare kam bere realisht ne nivel OS.
    Te vetmen gje qe kam ruajtur vetem prej faktit se ndodhej ne kompjuter te dikujt tjeter eshte nje program ne VB6 qe ekam postuar ne forum dhe te them te drejten se kam me as vete ne kompjuterin tim .

    Me te mira.

    P.S. ajo faqa aty nuk nenkupton qe virtual memory implementohet nga procesori!

  10. #30
    i/e regjistruar
    Anëtarësuar
    16-04-2004
    Postime
    674
    Citim Postuar më parë nga Neritan Hyso

    qe meqe ra fjala, jane minimalisht idiote.
    Jo ne Shqiperi, por ne asnje vend te Botes, asnje avokat nuk do merrte persiper te prezantonte ne gjygj nje “klient” qe ka zgjedhur te perdore nje kopje pirate. Minimalisht, autori i nje programi mund te thoshte “qe nga momenti qe dikush e ka modifikuar programin tim, ai s’eshte me programi im, dhe une s’mbaj me asnje pergjegjesi per te”. Lere pastaj qe ne c’do rast padia mund te ngrihet vetem kunder atij qe ta shiti, qe ne rastin e nje programi pirat, nuk eshte prodhuesi origjinal.

    Une e cmoj nje debat si nje mekanizem per te zbuluar te verteten, por padyshim efektiviteti i ketij mekanizmi varet shume nga niveli i njohurive te njerezve qe e zhvillojne ate.
    Neritan, ti e paske gabuar profesionin plotesisht. Menyra se si i zevendeson premisat
    eshte mjeshteri ne vehte. Ajo cka ke propozuar ne nje postim te mehershem ne esence nuk eshte asgje tjeter vecse nje veprim viral, e dihet se autoret e tille prosekutohen me ligj. Kjo nuk eshte spekulim, por fakt.
    Gjithashtu nuk ke mundur te gjesh pergjigje ne problemin e zhvillimit te veglave te reja per te cilat nuk ke njohuri ne momentin e krijimit te mekanizmit mbrojtes. Ketu do te duhej te kuptosh se parimisht eshte e "pamundur" te zhvillohet nje mekanizem i pathyeshem.

    Sa i perket aftesive intelektuale dhe profesionale te anetareve te ketij forumi nuk ma merr mendja se jan aq te uleta. Ne anen tjeter po te isha ne vendin tend nuk kisha me permend 2000 oret e kaluara para debugerit sepse kjo eshte zakonisht indikacion i programimit te dobet. Urime per krijimin e gjuhes programuese (text parser) por nese deshiron te impresionosh anetaret tjere lajmerohu kur te krijosh nje compiler.

    Shkurt e shqip, casja e jote ndaj kesaj problematike eshte fundamentalisht e gabuar. Pa e ndryshu casjen nuk do te jesh ne gjendje te dizajnosh nje mekanizem te pranueshem.
    Arsyeja se pse ideja qe te maskohet nje pjese e programit ne skedar te tipit bmp
    eshte naive, si duket ende po te ik (gje qe e demonstron lidhjen e logjikes tende me windows).

Faqja 3 prej 4 FillimFillim 1234 FunditFundit

Tema të Ngjashme

  1. Sheikh Muhamed Nasuridin Albani
    Nga forum126 në forumin Komuniteti musliman
    Përgjigje: 20
    Postimi i Fundit: 19-08-2009, 11:01
  2. Shenja ne Rruge!?
    Nga ORIONI në forumin Komuniteti musliman
    Përgjigje: 11
    Postimi i Fundit: 17-06-2009, 08:47
  3. Roli i Famullisë së Tiranës në mbrojtjen e hebrenjve
    Nga Brari në forumin Historia shqiptare
    Përgjigje: 0
    Postimi i Fundit: 31-01-2009, 02:55
  4. Zyra për Mbrojtjen e Qytetarëve: Armando Duka në konflikt interesi
    Nga Albo në forumin Tema e shtypit të ditës
    Përgjigje: 0
    Postimi i Fundit: 03-09-2006, 22:33
  5. Radio Maria ne gjuhen shqipe
    Nga NoName në forumin Komuniteti katolik
    Përgjigje: 3
    Postimi i Fundit: 09-08-2006, 03:47

Regullat e Postimit

  • Ju nuk mund të hapni tema të reja.
  • Ju nuk mund të postoni në tema.
  • Ju nuk mund të bashkëngjitni skedarë.
  • Ju nuk mund të ndryshoni postimet tuaja.
  •