Ir para conteúdo

kodo no kami

Membros
  • Total de itens

    64
  • Registrado em

  • Última visita

  • Dias Ganhos

    6

kodo no kami ganhou o dia em 29 de outubro

kodo no kami teve o conteúdo mais curtido!

Reputação

28 Excelente

2 Seguidores

Dados Pessoais

  • Sexo
    Masculino

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

  1. Bom galera isso é apenas uma pequena dica, tem um microscópio USB bastante interessante para quem curte eletrônica (não necessariamente apenas eletrônica, é possivel usar ele para outras coisas como biologia e tal kkk). Como ele é um microscópio digital então é necessário usar ele junto a um computador ou um celular (nesse caso precisa de um cabo OTG para conexão com o celular). Esse meu microscópio amplia ate 1000x embora exista outros modelos que amplia menos outros que amplia mais dessa mesma marca (claro existem outras marcas tambem, so que esse achei relativamente barato ~ made in china '-' ) você também pode controlar a iluminação dele alem de ter como ampliar fisicamente rotacionando e aproximando o microscopio tambem é possivel ampliar digitalmente via software ate 400x em cima daquela imagem (o mesmo pode ser feito por um botão no proprio microscópio) o software tambem permite a gente tirar uma foto (sendo que é possivel fazer o mesmo através de um botão no microscopio tambem), alem de ter como inverter a imagem ou espelhar ela e capturar como video as vezes é um pouco complicado focar tendo que calibrar certinho para aquele objeto em especifico, principalmente objetos muito pequenos qualquer tremida ja vai perder o foco nele podemos usar o microscópio em placa e conferir se as trilhas e soldas não estão em curto, ou para ler e manipular os componentes smd que são bem pequenos =/ bom galera para a gente ver o quanto isso amplia, eu peguei um pedaço de pano velho aqui ampliando um pouco mais aquele pano no maximo bom galera é isso fica a dica desses microscópio ai \o by kodo no kami
  2. Galera existe uma extensão no sistema windows que permite abrir paginas html em um programa especifico, essas paginas html são abertas e interpretadas em um programa chamado mshta que é uma especie de navegador baseado no internet explorer para executar aplicações que são feitas na linguagem html. Bom galera para usar o hta é bastante simples bastando criar a pagina html em um arquivo com extensão .hta, e depois executar ele como qualquer outro tipo de executável daquele sistema https://gist.github.com/hackerfts315/267a944b3c3e9fb27984fae4bc027168 é possivel usar css, javascript e ate o antigo vbs https://gist.github.com/hackerfts315/cbe1e6ad0b7a13903235289faf88d4a7 você também pode usar activex e wscript para conseguir fazer um monte de coisa que não seria possível nos navegadores atuais (claro, não é possível por medidas de segurança kkk) https://gist.github.com/hackerfts315/97c7f8825b2da1022b934e3e533c7c39 bom galera é isso, apenas uma pequena dica \o obs: galera coloquei os codigos tudo no git, pq o forum ta interpretando eles =/ by kodo no kami
  3. E ae galera beleza? nesse tutorial vamos criar um player para algum stream ou radio online em delphi usando o activeX do Windows Media player (como é um componente activeX o mesmo poderia ser feito em outras linguagens e IDEs que permite importar esses tipos de componentes). Nesse exemplo estarei criando um player para a radio blast que é uma radio de cultura niponica, sempre tocando musicas de animes ou desse genero. Então galera mãos a obra, vamos começar abrindo o delphi com o delphi aberto vamos instalar o activex do windows media player, para isso apertamos no menu "Component" e depois em "Import ActiveX Control" vai abrir uma aba, nela procura o activeX do windows media player e aperte em install, se tudo ocorrer bem ele sera instalado na aba activeX agora galera vamos criar o nosso player, vou colocar dois buttons o primeiro vai começar a tocar e o segundo vai parar de tocar, também vou colocar o componente do windows media player da aba ActiveX (como é uma radio com apenas o retorno do audio eu posso simplesmente ocultar o componente do windows media player colocando false na propriedade visible dele, você pode deixar visivel caso seja um stream de video) para que funcione você deve pegar a url certinho do stream (não a da pagina), para fazer isso você pode usar o inspecionar elemento do navegador (com essa url em mãos voce tambem pode tocar a radio pelo próprio windows media player ou ate pelo vlc ou qualquer outro player) a gente atribui a url do stream no atributo URL do componente WindowsMediaPlayer no evento OnClick daquele botão que vai começar a tocar procedure TForm1.Button1Click(Sender: TObject); begin WindowsMediaPlayer1.URL := 'http://192.99.150.31:8315/principal'; end; no segundo botão a gente atribui uma string vazia procedure TForm1.Button2Click(Sender: TObject); begin WindowsMediaPlayer1.URL := ''; end; pronto bastando compilar e testar (nesse momento ta tocando rip slyme: super shooter ~ op de gantz) podemos customizar o player da forma que a gente quiser inclusive adicionar novas funcionalidade como exibir as musicas tocadas e etc bom galera isso aqui é apenas um tutorial não é um player oficial da radio blast, existe um para android codado pelo Etrom Kusanagi so procurar la no discord da radio caso tenha interresse, tambem deveria ter um bot no discord deles se um tal de kodo não tivesse sumido esses meses (pressinto que o Joke e o Sephis vão puxar a orelha dele quando ele aparecer por la T.T ), Bom galera é isso ando meio sumido ultimamente mais ainda estou vivo, então ate um proximo tutorial daqui a uns meses \o by kodo no kami
  4. kodo no kami

    [download] kodo ceps

    bom galera dessa vez um programinha de consulta de ceps e ruas, so estou enviando apenas 100k do db \o download (mega)
  5. bom galera nesse tutorial estaremos mexendo com o icarus verilog, sendo ele um sintetizador e simulador da linguagem verilog. A linguagem verilog é uma linguagem de descrição de hardware, por ela podemos descrever o funcionamento interno de um hardware especifico, podemos como exemplo recriar todo o funcionamento de uma arquitetura ou de um processador usando apenas uma determinada linguagem. Existem inclusive chips construídos especificamente para sintetizar internamente toda aquela logica usando esse tipo de linguagem como ocorre nos FPGA, onde podemos recriar uma arquitetura e o seu funcionamento em cima daquele chip e daquela linguagem (ainda não tive a oportunidade de mexer com FPGA T.T ). Bom galera para começar a gente baixa o icarus no site oficial, o icarus é opensource e existem para diversas plataformas como windows e linux (em boa parte das distros linux ele ja tem no repositorio da distro) site oficial depois de baixar e instalar via repositório ou via binário (dependendo temos que coloca nas variáveis de ambiente para conseguir executar ele em qualquer diretório), criamos um código basicão que ira exibir uma string na tela do simulador (não vou ensinar a linguagem verilog nesse tutorial apenas o uso do icarus), para isso criamos em um arquivo o nosso codigo verilog (normalmente com extensão .v) module kodo; initial begin $display("ola mundo by kodo"); end endmodule o codigo a cima vai exibir na tela do simulador a mensagem "ola mundo by kodo", para a gente sintetizar e rodar no simulador usamos o comando iverilog, passamos como argumento o nosso código fonte (também podemos ter uma saída com um nome especifico usando o argumento -o seguido do nome do arquivo de saída antes do nome do código fonte) iverilog -o kodo.out kodo.v para simular ele usamos o comando vvp seguido do arquivo de saida vvp kodo.out outro exemplo seria sintetizar um clock, que ira exibir uma mensagem quando tiver uma borda de subida e outra mensagem quando for uma borda de descida module kodo; reg clock = 0; initial begin end always #100 clock = ~clock; always @(posedge clock) begin $display("borda de subida"); end always @(negedge clock) begin $display("borda de descida"); end endmodule no exemplo anterior ele ficara preso em um loop infinito, se a gente apertar control+c vai dar um break e depois ira cair em um terminal interativo, onde podemos digitar finish para sair, cont para continuar, step para rodar passo a passo, ls para listar os modulos, entre outros comandos podemos exportar um vcd e carregar em um programa para exibir toda essa mudança dos estados. Para fazer isso usamos as diretivas $dumpfile e $dumpvars, nesse meu exemplo a baixo sera armazenado no registrador k o estado invertido do clock module kodo; reg clock = 0, k = 0; initial begin $dumpfile("kodo.vcd"); $dumpvars(0,clock); $dumpvars(1,k); end always #100 clock = ~clock; always @(clock) begin k = ~clock; end endmodule depois do dump bastaria carregar o nosso vcd em algum programa que interprete esse formato como o gtkwave, waview ou qualquer outro desse genero. bom galera esse é o básico do icarus ^^ by kodo no kami
  6. kodo no kami

    [download] kodo tel600k

    bom galera ja codei e postei um software semelhante a esse, nele exibia placas de veículos do estado de são paulo, esse mostra telefones e endereços (não necessariamente de sp tendo outros estados tambem). Como no soft anterior so vou disponibilizar 30k dos 600k do db (kodo seu mão de vaca!!! ta fui eu que tive o trabalho de garimpar esse trem então é 30k e pronto u.u ), Talvez futuramente eu disponibilize uma porção maior desse db ou ate mesmo um sistema com esses dbs e mais alguns com informações cruzadas em um único sistema de busca (quem sabe ne XD) download (mega)
  7. galera um pequeno script em perl para listar proxy atualizado, ele usa como base o site free proxy list, o uso do script é bastante simples apenas o nome do script source (github) perl script.pl é possivel colocar a função eofintg_getProxy em seus scripts perl para randomizar conexões via proxy ^^
  8. depende desse ataque, se o ataque for em uma maquina na internet você pode usar proxy/vpn (lembrando usar proxy ou vpn evita das maquinas depois do proxy capturar seu IP, e não do proprio servidor de proxy capturar o trafego da sua rede que passa por ele ou dos routes o trafego passa ate chegar ate ele), voce pode usar inclusive o tor para isso que é um proxy do tipo socks tambem (ele não se limita apenas ao navegador pode ser usado em qualquer programa que aceite proxy socks ~ so a resolução de nomes para hidden service que é um pouquinho complicado em outros programas), se o ataque for local entao spoofing é melhor alternativa. aqui um script que mostra proxy atualizado:
  9. e ae galera nesse tutorial vamos criar um simples servidor HTTP usando o delphi e a biblioteca indy (o delphi que estarei utilizando nesse tutorial sera o delphi 7 com a biblioteca indy atualizada ~ pode ser feito o mesmo em um delphi mais recente que ja tem a biblioteca indy atualizada). Para começar essa brincadeira toda vamos criar uma simples interface para ele, a interface sera composta por dois botões para ligar e desligar o servidor, um Edit para especificar a porta e um Memo para escrever o nosso codigo html (css e js) agora colocamos o componente do servidor http (IdHttpServer) que fica na aba "Indy Servers" vamos editar o evento OnClick do botão que vai ligar aquele servidor. Naquele evento temos que desligar o servidor caso ele já esteja rodando (isso evitaria rodar duas instancia do mesmo servidor e acabar dando algum tipo de erro), para fazer isso setamos False no atributo Active daquele componente (IdHTTPServer1.Active). Mudamos a porta no atributo DefaultPort (como o texto no edit é uma string e o atributo DefaultPort so aceita Integer usamos o metodo strtoint para converter). Por fim ligamos o servidor novamente com o Active procedure TForm1.Button1Click(Sender: TObject); begin IdHTTPServer1.Active := False; IdHTTPServer1.DefaultPort := StrToInt(Edit1.Text); IdHTTPServer1.Active := True; end; no evento OnClick do botão que vamos desligar o servidor, colocamos o Active do componente em false procedure TForm1.Button2Click(Sender: TObject); begin IdHTTPServer1.Active := False; end; teoricamente o nosso servidor já esta pronto, só precisamos processar a requisição que vem do cliente e a resposta que volta para o cliente. Para fazer isso vamos usar o AResponseInfo e ARequestInfo que são passadas junto com o evento OnCommandGet do nosso componente IdHttpServer. Primeiro vamos enviar apenas o nosso html para o cliente, depois pensamos em uma forma melhor para manipular a requisição que vem do lado cliente para deixar o servidor mais dinamico. Para a gente simplesmente enviar o html usamos o atributo ContentText do AResponseInfo (nesse caso vamos passar o atributo Lines.GetText do Memo, é nele que vamos colocar o nosso html) procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); begin AResponseInfo.ContentText := Memo1.Lines.GetText; end; é necessario declarar tambem o idcontext em uses unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPServer, IdCustomHTTPServer, IdHTTPServer, StdCtrls, idcontext; se a gente compilar e rodar o programa, colocar um codigo html nele, depois ligar o servidor e entrar na pagina pelo navegador, vai funcionar normalmente como um servidor HTTP (tá, eu sei que não é um apache da vida, mais funciona ué kkk) <html> <head> <title>by kodo no kami</title> </head> <body><center> <h1>pagina de teste</h1><hr> <img src="https://i.imgur.com/fa3QGBF.png"> </center></body> </html>
  10. E ae galera beleza? Nesse tutorial vamos ver como funciona aqueles programas que transforma a imagem em uma imagem negativa ou vice versa, o foco desse tutorial não são os programas e sim a própria conversão das cores positivas para negativas, tanto que nesse tutorial vamos desenvolver um programinha em delphi para fazer todo esse processo (o mesmo poderia ser feito em outras linguagens também, mudando apenas a forma de fazer ou as bibliotecas e módulos utilizados). Bom galera para começar vamos pegar uma imagem qualquer (como o kodo é um full otaku então ja sabe que sera uma imagem de anime, nééé u.u ). A imagem que o google escolheu foi a da kanna do anime "Kobayashi-san Chi no Maid Dragon" o que precisamos analisar primeiro nessa imagem é a dimensão dela, sendo uma largura X e uma altura Y normalmente medida em pixel (no caso dessa imagem ela tem 723 de largura e 1024 de altura: 723x1024). Podemos multiplicar a altura pela largura para saber quantos pixeis existem no total, ou seja, quantos pixeis a gente vai alterar ao todo (as vezes a imagem carregada no programa tem a dimensão de uma janela especifica cortando a própria imagem naquela dimensão, nesse caso a dimensão tratada sera a da janela e não a da imagem) 723 * 1024 = 740352 os pixeis são as menores partes visuais daquela imagem, eles são pequenos blocos de cores que forma aquela imagem como um todo. Se a gente colocar um zoom na imagem podemos ver que ela é constituída por cores diferente a cada pixel (claro que depende do formato do arquivo, muitos formatos de imagem usa vetores para criar uma especie de linhas vetoriais ligando um ponto a outro e assim formando a própria imagem por eles) outra coisa que precisamos analisar que um único pixel é constituído por 3 cores diferentes formando uma unica cor com base nelas, sendo o padrão RGB (Red Green Blue). Com essas trés cores você pode formar as outras cores (ex: vermelho + verde = amarelo), também é possível usar tonalidades diferentes formando novas cores, as vezes dependendo do sistema ou do formato do arquivo manipulado, ele se limitando a 32 bits de cores no total, sendo 8 bits para cada tonalidade do RGB (0~255 ou 0~ff) vermelho (255,0,0) verde (0,255,0) azul (0,0,255) vermelho + verde = amarelo (255,255,0) vermelho + verde = laraja (255,128,0) vermelho + azul = violeta (255,0,255) vermelho + azul + verde = branco (255,255,255) nenhuma = preto (0,0,0) agora que a gente já sabe o que é um pixel, vamos dar uma pequena analisada como funciona a conversão para negativo, você pode usar vários programas para converter de positivo para negativo (ex: photoshop, gimp, convert e etc). Vou usar o programa convert que funciona com base em comando (tem para windows e linux). Para usar esse programa basta a gente passar o nome do programa seguido da imagem que vamos converter, seguido do parâmetro negate seguido do arquivo de saída (lembrando que o programa deve esta instalado e na variável de ambiente), na próxima image geramos a dark kanna (sendo ela um dragão maligno de uma dimensão alternativa, sqn '-' ) convert kanna.bmp -negate kanna_neg.bmp uma das coisas legais da imagens negativas que ela volta para a cor original, quando você faz outro efeito negativo em uma imagem já negativa (ou seja não a perda de dados nisso) esses programas que transforma a imagem em negativo pega tal pixel em tal posição especifica e substitui um por um pelo equivalente oposto daquela cor, substituindo uma tonalidade mais alta para a mais baixo sequencialmente. Exemplo a cor preta (0,0,0) ficaria branco (255,255,255). Para a gente saber as cores equivalente bastaria montar uma tabela com duas colunas e incrementar a primeira e decrementar a segunda positivo | negativo ------------- 0 | 255 1 | 254 2 | 253 3 | 252 4 | 251 5 | 250 6 | 249 ... 250 | 5 251 | 4 252 | 3 253 | 2 254 | 1 255 | 0 para quem é preguiçoso, tem um programinha simples em C que gera essa tabela a cima #include <stdio.h> int main(void){ int contador1, contador2; for(contador1 = 0, contador2 = 255; contador1 < 256; contador1++ ,contador2--){ printf("%d - %d \n",contador1, contador2); } } uma outra forma sendo ela até mais simples que construir uma tabela inteira, é utilizando um pouco de aritmética. O calculo é bastante simples, apenas subtraindo a maior tonalidade de cada cor normalmente é o 255 pela tonalidade da cor daquele pixel 255 - 253 = 2 então o inverso tambem funciona 255 - 2 = 253 então galera vamos construir um simples programa em delphi para mudar cada pixel da imagem usando o componente Image e o canvas para manipular ele (tem uma sequencia de tutoriais meus, perdido em algum lugar por ai sobre canvas no delphi). Com o delphi aberto, coloquei o componente Image (mudei a propriedade stretch do Image para true com isso vai dimensionar a imagem dentro daquela janela mostrando ela toda), um Edit e dois Buttons (o Edit vamos utilizar para seleciona a imagem no PC), o primeiro button vai carregar a imagem para o componente, e o segundo vai aplicar o efeito de negativo na imagem. no evento onclick do botão onde vamos carregar a imagem, usamos o método Picture.LoadFromFile e passamos o atributo Text daquele Edit procedure TForm1.Button1Click(Sender: TObject); begin Image1.Picture.LoadFromFile( Edit1.Text ); end; no outro botão a gente faz o codigo para ler e mudar os pixeis. Para a gente ler pixel a pixel em um retângulo (que é o caso da imagem), basta a gente criar dois loops um dentro do outro, quando o primeiro loop incrementar vai ter que incrementar todo o segundo loop antes, e depois vai incrementar o primeiro novamente ficando nesse loop, com isso a gente corre toda a imagem pixel a pixel. Para começar criamos duas variáveis que vão ser as posições no quadrado (vour chamar de posX e posY) procedure TForm1.Button2Click(Sender: TObject); var posX, posY: Integer; begin end; vou usar o loop for e deixar o primeiro loop para ler a altura e o segundo para ler a largura (ou seja o meu programa vai ler coluna a coluna primeiro, quando termina a primeira coluna vai avançar na linha e seguir esse padrão ate o final). Tambem temos que saber o tamanho maximo tanto da largura quanto da altura (podemos usar o atributo Picture.Width e Picture.Height do Image para conseguir esses valores) procedure TForm1.Button2Click(Sender: TObject); var posX, posY: Integer; begin for posX := 0 to Image1.Picture.Height do begin for PosY := 0 to Image1.Picture.Width do begin end; end; end; dentro do segundo for vamos ler a cor naquela posição usando Canvas.Pixels do componente Images, passamos como argumento a variavel posX e posY para ele. Usamos também a função ColorToRGB para um retorno inteiro procedure TForm1.Button2Click(Sender: TObject); var posX, posY, cor: Integer; begin for posY := 0 to Image1.Picture.Height do begin for PosX := 0 to Image1.Picture.Width do begin cor := ColorToRGB(Image1.Canvas.Pixels[posX,PosY]); end; end; end; agora temos a cor seguindo um tipo inteiro que é bastante dificil de ler, para a gente separas as cores usamos o AND e o SHR (shift right), basicamente o AND vai zerar todos os bits que não seja referente aquela cor e o shift right vai mover para direita deixando apenas uma cor procedure TForm1.Button2Click(Sender: TObject); var posX, posY, cor, R, G, B: Integer; begin for posY := 0 to Image1.Picture.Height do begin for PosX := 0 to Image1.Picture.Width do begin cor := ColorToRGB(Image1.Canvas.Pixels[posX,PosY]); R := cor and 255; G := cor and 65535 shr 8; B := cor and 16777215 shr 16; end; end; end; para terminar o codigo basta atribuir novamente ao Canvas.Pixels usando a função RGB dessa vez para recriar o tipo TColor, aproveitando tambem subtraimos o numero de 255 para fazer o efeito negativo procedure TForm1.Button2Click(Sender: TObject); var posX, posY, cor, R, G, B: Integer; begin for posY := 0 to Image1.Picture.Height do begin for PosX := 0 to Image1.Picture.Width do begin cor := ColorToRGB(Image1.Canvas.Pixels[posX,PosY]); R := cor and 255; G := cor and 65535 shr 8; B := cor and 16777215 shr 16; Image1.Canvas.Pixels[posX,PosY] := RGB(255 - R, 255 - G, 255 - B); end; end; end compilamos e executamos por fim aplicamos o efeito negativo nela *-* bom galera ate um próximo tuto sobre programação e manipulação de imagens \o by kodo no kami
  11. e ae galera blz? nesse tutorial vamos programar para um computador antigo da decada 70, sendo essa maquina um altair 8800 da mits. Nesse tutorial vamos esta usando um simulador ja que é uma maquina extramente antiga e rara entre colecionadores (nunca tive oportunidade de mexer com um de verdade, queria uma replica de natal para brincar kkk =/ ), no caso para esse tutorial vamos usar o "altair 8800 emulator" embora exista outros emuladores para ele inclusive alguns onlines site oficial (altair32) bom galera antes de começar a brincar com o emulador temos que entender algumas coisas, a primeira delas que programar esse tipo de maquina não é tão simples como as atuais onde a gente cria o codigo em C, Pascal ou qualquer outra linguagem usando uma IDE bonitinha e depois joga no disco para dar boot. As maquinas mais antigas as vezes nem tinha o teclado ou monitor, apenas leds para sinalizar o bit daquele barramento, chaves ou botões para mudar os estados deles (no caso do altair são aquelas chaves do tipo alavanca). Outra coisa que temos que citar que a arquitetura do altair 8800 é baseado nos processadores intel 8080 (talvez exista variantes em 8085 ou ate em z80 ja que o proprio simulador tem a opção z80, alem dessas arquiteturas tambem serem compativeis de certa forma, embora creio que precise mudar um pouco o circuito para que isso seja possivel ~ uma coisa interessante que os computadores imsai 8080 é um clone do altair, eles tambem usavam processadores 8080, ate que começaram a ser fabricados usando o 8085 como cpu). Como o computador é baseado em 8080 então a arquitetura e o assembly usado na arquietura atual x86 não é compativel com essa maquina, nem o set de instruções e nem o binario gerado (para isso, temos que programar exatamente para a arquitetura 8080 ou ate mesmo o 8085 e z80, excluindo algumas instruções não compativel com o 8080). bom galera agora que a gente ja falou um pouco sobre esse computador vamos da uma olhada em uma imagem que peguei wikipedia dessa maquina o que precisamos entender que vamos programar ele manualmente bit a bit formando o codigo binario equivalente aquela instrução do 8080, depois podemos rodar o programa tanto passo a passo quanto de uma vez. primeiro de tudo vamos entender um pouco do painel desse trem. O primeiro botão que vamos ver é o que fica no lado esquerdo do canto inferior (escrito off e on ~ coloquei em vermelho), esse botão liga e desliga a maquina (quando empurramos a alavanca para on ele liga para off ele desliga), o segundo botão que vamos analisar sera o botão para rodar o programa do computador, sendo esse botão o run (no meu exemplo ele é o verde), para a gente usar esse botão temos que coloca o programa antes ne (esse emulador ja tem um programa padrao nele entao podemos dar um run sem problema), outra coisa que podemos ver que os leds que estiver escrito A e os D vao mudar constantemente sendo os leds A representando os endereços de memorias (normalmente vai mudar sequencialmente menos quando acontecer um jmp) e o D representando a instrução ou os dados (lembrando que isso é binario ~ no exemplo abaixo seria o codigo hexadecimal 8 no barramento de dados e no barramento endereço de memoria o numero 4cff), podemos apertar em stop para parar o programa no trecho atual da memoria (tambem a cor verde porem para cima dessa vez), depois que o programa estiver parado podemos apertar em run novamente para rodar ele novamente podemos rodar o programa passo a passo depois de parado usando o botão single step (no meu exemplo ele é o verde claro), o single step tambem serve para passar para o proximo dado na memoria (executando ele é claro) para a gente resetar os registradores tambem seria meio para reiniciar o computador sem cortar a sua energia, usamos o botão reset (no meu exemplo é o roxo) para a gente ir para um endereço de memoria especifico temos que setar os bits equivalente a ele no barramento de endereço, para isso usamos os botões do barramento de endereço/dados (no meu exemplo é a cor marrom), supondo que eu quero debugar o meu programa a partir da posição hexadecimal 25 (100101) de memoria, então basta setar o valor 100101 nos botões de barramento e depois usar o botão de leitura ou Examine para pular para aquele trecho (no meu caso é o azul claro o botão), o Examine Next é executado para ler o proximo byte porem não executar como codigo para a gente escrever na memoria primeiro vamos para a posição desejada como no exemplo anterior, depois escrevemos no barramento de dados usando os botões de barramento (esse botão serve tanto para memoria quanto para os dados a diferença que os dados sao apenas 8 bits ou seja os oitos primeiros botões ja que é um processador de 8 bits), por fim usamos o botão deposit (no meu exemplo era o azul escuro), o Deposit Next vai pular a instrução e escrever no proximo endereço depois dela, no exemplo abaixo eu escrevo o byte 05 na memoria um simples programa que atribui um valor a um registrador depois soma com um outro valor a esse registrador depois joga na memoria no endereço 0b, no caso a instrução hlt vai parar o programa (seria o mesmo que puxar o botão stop porem por software), depois basta a gente da um step para o proximo dado para ter o resultado mvi a,50h mvi b,10h add b mvi h,0 mvi l,0bh mov m,a hlt depois de compilado vai gerar o codigo binario abaixo (representei ele em hex), voce pode criar seus proprios programas e não se limitar ao meu, bastando usar um compilador para 8080,8085 ou z80 para descobrir os bytes equivalente (ou procurar em manuais dessa arquitetura pelo set de instruções tambem) 3e 50 06 10 80 26 00 2e 0b 77 76 00 depois disso basta voce escrever cada byte desse sequencialmente a partir do endereço de memoria 0 ( vai da um trabalho isso em u.u ), depois executar o programa ele ate ele para no hlt como previsto pelo codigo, para a gente exibir o resultado basta exibir o proximo dado apertando o Examine Next (ele ler o proximo endereço da memoria sem executar), no meu exemplo tem que da o valor 60 (1100000) bom galera sei que tem muita coisa para falar sobre esse computador principalmente voltado a parte de programação, porem, esse tutorial foi feito para mostrar o funcionamento basico dessa maquina sem nos aprofundar tanto, então quem sabe em algum futuro tutorial eu entro de cabeça para ensinar asm 8080/8085 ou ate mesmo z80 ^^ by kodo no kami
  12. bom galera nesse tutorial vamos aprender um pouco sobre a ferramenta sysdig que nos permite monitorar eventos do sistema a nivel do kernel, para começar a gente baixa ela pelo repositorio da distro no meu caso usando o apt-get ou baixamos o pacote depededo da distro (e sim formatei o sistema deu pau no HD =/ , natal ta chegando quem quiser doar um HD to aceitando presentes kkkk ) sudo apt-get install sysdig se a gente digitar apenas sysdig ele vai nos listar todas as informação de eventos de leitura, escrita, os arquivos abertos, comunicação sendo enviada ou recebida e etc. sudo sysdig podemos filtrar um processo especifico pelo seu nome usando o argumeto proc.name sudo sysdig proc.name="Discord" da mesma forma podemos fazer o mesmo pelo pid com o argumento proc.pid sudo sysdig proc.pid=8147 tambem podemos filtrar todos os processos que foram executado em um diretorio especifico usando proc.cwd sudo sysdig proc.cwd="/home/kodo/Desktop/" os processos pelo executavel em disco com o parametro proc.exe sudo sysdig proc.exe="/usr/sbin/apache2" podemos filtrar apenas os descritores com o argumento fd.num, exemplo seria o stdout que é o numero 1 sudo sysdig fd.num=1 ou pelo tipo do descritor se ele é um arquivo (file), se é um socket ipv4 ou ipv6 (ipv4/ipv6), um socket unix (unix), um evento ou um sinal (event/signal), ou ate mesmo um pipe (pipe). para isso usamos o parametro fd.type sudo sysdig fd.type="ipv6" é possivel pegar os descritores que contem um IP especifico com o paramentro fd.ip sudo sysdig fd.ip=8.8.8.8 para filtrar apenas o IP de destino usamos o parametro fd.rip sudo sysdig fd.rip=8.8.8.8 com o parametro fd.lip filtramos apenas o IP de origem sudo sysdig fd.lip=192.168.1.1 temos o parametro fd.port para filtrar uma porta especifica sudo sysdig fd.port=22 da mesma forma que o IP podemos usar o fd.rport para filtrar apenas a porta de destino sudo sysdig fd.rport=22 ou o fd.lport para filtrar apenas aquela porta de origem sudo sysdig fd.lport=33814 é possivel filtrar ate mesmo por rede usando fd.net sudo sysdig fd.net="192.168.1.0/24" para a gente filtrar pelo nome do usuario usamos user.name sudo sysdig user.name="kodo" o mesmo pode ser feito pelo id do usuario com o parametro user.uid sudo sysdig user.uid=1000 pelo nome do grupo com parametro group.name sudo sysdig group.name="root" ou ate pelo id do grupo com o parametro group.gid sudo sysdig group.id=0 é possivel filtrar eventos do syslog com o parametro syslog.serverity.str seguido do tipo de evento (emerg, alert, crit, err, warn, notice, info, debug) sudo sysdig syslog.severity.str="info" tambem podemos filtrar tipos de eventos especificos como write, read, open, close, select, poll, mmap, sendmsg, recvmsg entre outros com o parametro evt.type sudo sysdig evt.type="open" tambem é possivel filtar por categoria com o parametro evt.category, para especificar eventos de arquivos usamos file, para memoria o memory e para a rede usamos o net sudo sysdig evt.category="net" o sysdig tambem existem filtros especificos para docker como o container.id que filtra pelo id dos containers sudo sysdig container.id=c4491982de4a tambem podemos filtrar pelo nome da image do docker sudo sysdig container.image="kalilinux/kali-linux-docker" bom galera existem outros parametros que podemos especificar para filtragem, para exibir todos eles usamos o parametro -l sysdig -l tambem podemos filtrar mais de um parametro ao mesmo tempo usando o "and" indicando a logica E entre os parametros especificados ou seja todos os parametros devem ser satisfeitos para ser filtrado, um exemplo seria filtrar o evento write do usuario kodo no processo Discord sudo sysdig user.name="kodo" and proc.name="Discord" and evt.type="write" o mesmo pode ser feito com o "or" que seria equivalente a logica OR entre os parametros, um exemplo disso seria filtra o usario kodo ou o usuario root sudo sysdig user.name=kodo or user.name=root da mesma forma podemos usar o not para a negação com isso a logica é invertida, um exemplo seria filtrar qualquer usuario que nao seja o kodo sudo sysdig not user.name=kodo podemos salvar toda a captura em um arquivo usando o parametro -w seguido do nome do arquivo sudo sysdig -w kodo.scap para a gente ler esse arquivo usamos o parametro -r sudo sysdig -r kodo.scap alem de filtrar o conteudo podemos exibir uma saida formatada com parametros especificos, para isso usamos o -p seguido de uma string de formatação (usamos o sinal de porcentagem seguido do parametro para exibir ele). um exemplo seria exibir o nome do processo, o pid dele, os IPs e portas de origem e de destino sudo sysdig -p "%proc.name (%proc.pid) = %fd.lip:%fd.lport -> %fd.rip:%fd.rport" bom galera esse tutorial não termina aqui, vou fazer a segunda parte dele falando sobre chisels, então ate a proxima parte \o by kodo no kami
  13. e ae galera aqui um pequeno desafio (pequeno meio grande kkk), o desafio é bem simples as soluções das etapas dele. o desafio sao 50 etapas sendo cada uma diferente da outra envolvendo varios temas de informatica como programação, rede, pentest, engenharia reversa, forense e ate eletronica. boa sorte ai para quem quiser tentar \o https://eofclub.in/desafio/kodo
  14. e ae galera a pedido de um pessoa vou estar criando esse tutorial de como hospedar sites, no caso para hospedar um site (blog, forum etc) precisamos de um servidor web porem montar um servidor web sai caro isso é precisamos de um IP fixo ou usar algum serviço de IP dinamico como o no-ip, e tambem consumo de banda é muito alto entao precisamos de uma internet extremamente rapida para upload (alem consumo de energia), para evitar isso podemos contratar um webhost que sao servidores web onde podemos hospedar nossos sites, boa parte dos webhost sao pagos tambem existe alguns free porem sao limitados diferente da versao paga, nesse tutorial vamos usar um webhost que sera o hostinger hostinger no site basta a gente criar a conta para isso apertamos em "criar conta" que fica no canto direito superior perto do local onde coloca o email e senha ou apertamos em "peça agora!" (dificil nao ver), depois complete o formulario de registo porem coloque um email valido (por que vai ser enviado um email de confirmaçao para ele), depois aperte em criar conta depois de aperta em criar conta voce sera redirecionado para o painel de controle porem antes de continuar abra seu email la dentro vai ter dois email da hostinger um deles é de confirmaçao e nele basta apertar em um link para ativar depois basta voltar a pagina do painel e a atualizar a pagina (f5) podemos ver que sumiu a mensagem de alerta vermelho falando para registrar, no caso basta a gente aperta na parte azul com um H escrito new hosting depois apertamos em new account ou direto perto do home tem hosting depois new account depois vai ter 3 opçoes escolha a de seu preferencia Gratuito, Premium ou Business (claro que as duas outras sao pagas porem nao é limitada igual a gratuita), no caso vou ficar com a gratuita mesmo kkk agora falta especificar o nosso sub dominio (esy.es, 16mb.com, zz.mu etc) ou pagar um dominio, no caso vou usar um sub dominio tambem kkkk (kodonokami.esy.es), e tambem a senha para ele, depois aperte em continuar vai pedir para confirmar se nao é um bot aperte em "im not a robot" e depois aperte no botao para continuar denovo por fim é redirecionado para o menu hosting porem agora tem o subdominio do seu site nele, no caso basta aperta nele e depois manage para ser redirecionado para o painel para manipular ele nesse painel voce tem varias opçao como criar email aparti do seu dominio por exemplo eu poderia criar um email [email protected] (a versao gratuita so pode criar dois emails), eu posso criar 2 contas de ftp para subir meus arquivos para o site ou usar o file manage direto pelo painel mesmo, eu poderia criar tambem 2 bancos de dados mysql e usar o phpmyadm para manipular eles, entre outras dezenas de opçoes no caso eu vou subir uns usado o file manage que seria minha pagina principal do site sendo ela bem simples apenas um texto e uma imagem de final de tutorial kkkk depois basta ir no dominio para testar no meu caso aqui é o http://kodonokami.esy.es/ bom galera os webhosts mesmo free é bem limitado porem menos limitado que blogs como blogger onde apenas permite manipular o template do blog ou html dele, e com os webhosts voce pode mexer com php que é uma linguagem server side e com isso criar muito mais coisas ou instalar cms proto como por exemplo o wordpress e joomla \o by kodo no kami
  15. bom galera esse programa aqui ele aumenta o tempo expiração dos simuladores da oshonsoft mega quando abre o simulador 30 vezes ele expira e não é possivel usar ele novamente (alem do mais voce so pode usar esse simulador por 30minutos depois de aberto) depois de usar esse meu programinha voce pode usar o simulador 999999 vezes e quando expirar basta usar novamente o programinha '-' nao sou muito fan de criar crack para programas so que nesse caso nao achei nenhum software livre equivalente a esses simuladores com tantos recursos =/ by kodo no kami
×

Informação Importante

Ao usar este site, você concorda com nossos Termos de Uso.