Languages

Friday, September 13, 2013

Como parar com SPAM da sua operadora de celular


Cara! esses spams que tenho recebido da minha operadora (vivo) estão se tornando completamente sem noção!

Tem mensagem chegando de madrugada me acordando, mensagens com promoções de jogos, mensagens de ringtone, AFF!


Foi aí que descobri que uma resolução da Anatel de 2012 determina que as operadoras parem de enviar SPAM para os clientes que assim solicitarem.


Existem duas formas de solicitar isso, envie uma SMS com a palavra SAIR para o numero de sua operadora, no caso Claro (888), Oi (55555), TIM (4112) e Vivo (457).


Ou então ligue no serviço de atendimento e diga que você não quer mais receber SPAM, eles são obrigados a parar, caso não parem você pode ligar na Anatel (1331) com o protocolo do seu pedido e registrar uma denúncia.



E para fazer jus ao clima nerd deste blog, aqui o vídeo do episódio de Monty Python que deu origem a palavra SPAM (no contexto dessa coisa chata):




Debugging on PhpStorm

PhpStorm is a great IDE for php development, it is powerful, light and fully featured.
Actually I am a fan of all JetBrains IDEs, these guys know exactly what developers want.
It is quite simple to configure it so you can debug your php code, you can add breakpoints, stop code execution, analyze variables. Debugging gives you a whole new level of help while developing. So here's how to do it:

1- Open your php.ini located in your php installation folder.
2- Add the following code, changing folders to your actual php location, this example is for xampp on windows:

[XDebug]
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "C:\xampp\tmp"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_port = 9000
xdebug.trace_output_dir = "C:\xampp\tmp"

OBS: under linux or mac, xdebug will be a .so file under /etc/php/extensions folder

3- Restart apache on xampp, this enables Xdebug

If you have trouble enabling Xdebug like this or don't have xdebug installed yet you can use the phpinfo() output to auto-build a config step-by-step for you here: http://xdebug.org/wizard.php

Now for Phpstorm configs:

4 - File > Settings
5- Go to Project Settings > PHP
6 - click ... On the side of the interpreter then + sign
7- Name = Php
8- PHP Home = your php home, ex: C:\xampp\php
9- Debugger = Xdebug
10- Click OK to close dialogs

11- Now go to Run > Debug... > Edit Configurations
12- + sign > PHP Web Application > click ... On the side of server
13- Name = Xdebug, host = your url ex: localhost
14- OK to close dialogs
15- At the toolbar, next to the bug button there is a telephone with a bug next to it and a block sign, click it to enable debugging
16- place a breakpoint in your code by clicking the line number on the left
17- now click the bug icon to start your browser and kill those bugs =)





Monday, September 9, 2013

Fechando todos os processos automaticamente antes de começar um jogo

Você já esteve tão puto com o lag nos seus jogos que saiu balançando um cactus por aí?



Bom, eu já!

Sempre quando estou jogando no computador algum processo estúpido agarra minha CPU e joga ela na merda! O Java por exemplo possui um detector que identifica o momento mais crucial do seu jogo para só então começar a atualizar automaticamente.

A solução para isso que eu sempre adotei foi de abrir o gerenciador de tarefas e matar tudo que aparecer por lá, Matar! Matar! Matar!

E somente então, só para garantir, eu clicava com o botão direito sobre o processo do meu jogo e colocava a prioridade dele como máxima.

Depois de algum tempo, decidi construir um script bat para matar todos os processos desnecessários, deixando apenas o essencial, e coloquei ele no meu desktop, assim posso rodar sempre antes de iniciar um jogo.

Também fiz algo especial nele, se você arrastar um arquivo exe para cima dele e soltar, ele ira matar todos os processos como de costume, mas depois irá iniciar aquele exe com prioridade alta!

E hoje estou compartilhando este pequeno porém útil script com você! Divirta-se...


Devidos créditos vão para Bharat Balegere do AgniPulse.com pela primeira versão deste bat

How to solve iPhone not syncing via Wi-Fi

Some time ago I faced this problem, I wanted to sync my iPhone via Wi-Fi with a windows computer over iTunes, I know iTunes and iPhone have this feature, but even doing everything necessary, it never worked!

As soon as I took my phone out of the cable it could not see my computer on the network anymore and neither my computer did.


What I noticed is that when I closed iTunes, stopped the "Apple Mobile Device" service and started it again my iPhone got instantly detected!

It's too bad that Apple can't fix this, iTunes already had so many updates and yet this problem continues!

The workaround was to build a script that, after my computer started up, it restarted this service and just then launched iTunes.

Here is the script, you can set it to run on boot by placing it in the startup folder under start menu.

If you do not want to run iTunes on boot you can remove the iTunes.exe line before the last one:

https://sites.google.com/site/thinkhackerblog/itunes.zip?attredirects=0&d=1


Sunday, September 8, 2013

Como baixar legendas automaticamente ao terminar o torrent

EDIT: Eu criei um tutorial passo a passo de como instalar o Legender e programar o uTorrent para baixar automatico as legendas para leigos, acesse: http://thinkhacker.blogspot.com.br/2014/05/como-baixar-legendas-automaticamente-ao.html

---------------

Um belo dia eu fiquei de saco cheio de ter que procurar a legenda pra cada um dos filmes que eu baixava, isso me tomava tanto tempo que eu já estava desistindo de ver filmes no pc e ficava apenas no netflix.

Esse plano já não funcionou mais quando eu comprei minha TV 3D, já que o netflix não oferece ainda esta categoria. Precisei achar uma forma mais fácil de legendar os filmes..

Foi aí que encontrei o legendasbrasil - http://www.legendasbrasil.com.br/um site que tem um aplicativo muito útil, para baixar as legendas direto do seu shell (clicando com botão direito no filme). 

A grande vantagem dele, além da praticidade, é que ele usa uma hash do filme para procurar, então a precisão dos resultados é muito superior pois você estará baixando uma legenda testada e que funciona com aquele exato vídeo.

Não deu muito tempo até que eu criasse preguiça de ir lá no meu pc para clicar no filme e mandar baixar legenda. 

E foi quando eu tive a idéia de usar linha de comando para baixar, assim eu poderia configurar o meu aplicativo de torrent favorito (o utorrent) para rodar esse comando automaticamente quando terminasse um download.

Isso não foi tão fácil quanto parecia, aparentemente o legendasbrasil não possui uma forma de rodar por linha de comando, então o máximo que eu conseguia fazer era abrir o tal wizard dele e ter que clicar em próximo próximo próximo toda vez!

Foi aí que eu comecei a analizar o tráfego com o wireshark, na intenção de entender como ele fazia para baixar as legendas. Após ver direito como funcionava o protocolo do legendasbrasil eu fiz um igual, só que de linha de comando, para baixar a melhor legenda instantaneamente, sem passar por todo aquele processo desnecessário.

E eis que vos apresento o legender, o nome é uma reles brincadeira do nome legenda em português, transformado para verbo, em inglês.

Sem demais baboseiras, ele funciona assim:

- Substitui o programa de wizard original, o perfectmatch.exe, por um que baixa a legenda direto sem fazer perguntas.

- Além disso tem um aplicativo de auxilio, o legender.exe, que facilita rodar em linha de comando e deve ser colocado no mesmo diretório do perfectmatch.

Para usar ele: legender.exe [arquivo_de_filme1] [arquivo_de_filme2] ...

- Criei também um legenddir.bat, que ao invés de um arquivo de filme, recebe um diretório. Ele roda o legender em todos os arquivos de um diretório, é esse que você vai usar no utorrent por exemplo.
Essa versão do legender so funciona com o legendasbrasil versão 2.27. Eu inclui o instalador do legendasbrasil no zip.

ATENÇÃO: o legendasbrasil é um adware, traduzindo eles ganham dinheiro instalando spywares na sua maquina. 

O instalador dele vem cheio de truques para tentar te ludibriar a aceitar um spyware, como por exemplo uma segunda e terceira EULA que vc precisa clicar em declinar para seguir sem instalar spyware.

Sabendo disso, instale ele com bastante calma, e leia bem o que você esta clicando a cada passo, desmarque todas as opções possíveis e você conseguira instalar ele sem colocar spywares no seu pc.

Depois de instalado o legendasbrasil jogue o conteúdo do zip na pasta de instalação, sobrescrevendo quando necessário.

Configure o seu aplicativo de torrent favorito para usar o legender.exe se quiser executar ele num arquivo especifico, ou o legenddir.bat para executar em um diretório. Eu prefiro o legenddir porque quando baixamos series que vem com muitos episódios eu quero legendar automaticamente todos eles.

O zip possui também um arquivo com instruções passo a passo.

Legender v0.1b, arquivos:
https://sites.google.com/site/thinkhackerblog/legender%200.1b.zip?attredirects=0&d=1

Legender v0.1b, código fonte (python):
https://sites.google.com/site/thinkhackerblog/legender%200.1b%20src.zip?attredirects=0&d=1


Wednesday, September 4, 2013

Auto-Killing all unnecessary processes before starting a game

Have you ever been so pissed of with game lagging that you start swinging a cactus?



Well, I have!

Any time when playing a computer game some stupid process grabs my CPU and throws it to shit! Java for instance has something that detects wheter you are in a very crucial moment of the game just to start auto-updating!

The solution that I always adopted was running Task Manager and killing anything that appears there: kill kill kill!!!

And then, just to guarantee, I right clicked my game process and set it to maximum priority.

After some time I built a bat script for killing all unnecessary processes for me and placed it on my desktop, so I can run it whenever I am starting a game.

I also made something special on it, if I drag an exe file onto it it will kill all processes as usual, but then it starts that exe with high priority for me!

And today I am sharing this usefull little script with you! enjoy...


credits go to Bharat Balegere from AgniPulse.com for the first version of this bat

How to get your LG TV to work with any 3D vision capable PC

So, some time ago I decided to go and buy myself a nice 3D TV. I have always been fan of 3D since I was a little child (or not so little anyway).

My idea was to use it so I could play 3D games on the big screen and also watch 3D movies, everybody knows the bigger the screen the better the effect, right??

Well, this was the great start of headaches for me, which I ended up solving one by one and will render some blog posts here after all, so lets start..

Turned out when my TV arrived that my notebook was not 3DTV play compatible, my video card was one of the last ones that 3DTV play was not supported, model 9800M GTS.

But my computer worked well when playing 3D games when I borrowed my brother's 3D vision glasses and a monitor, so there should be some way to do it without using 3DTV play.

The thing is, LG is investing in passive 3D technology, and nvidia uses 3D vision active shutter glasses, so my chances were quite weak because there is a big leap in technology there, think hacker dude, think hacker..

What I found out after some research is that Acer makes passive monitors too, and that 3D vision built some support for these monitors, it works by switching on the passive mode as soon as it detects an Acer monitor.

I realized I had to fake my TV as being an Acer monitor, this was feasible through a driver manipulation  called EDID override, basically, we dump the TV information by using a software (Monitor Asset Manager) then change the EDID for that of an Acer or Zalman's monitor.

You can download EDID override drivers for Acer and Zalman monitors from here: https://sites.google.com/site/thinkhackerblog/passive%20edid%20override.zip?attredirects=0&d=1

You can also try the one I made from my LW5700 TV Dump (Acer Override) here: https://sites.google.com/site/thinkhackerblog/lw5700%20mod.zip?attredirects=0&d=1

I recommend using Acer override since it supports audio via HDMI, something that Zalman's don't.

After you downloaded the drivers you can extract them to a folder, and go to Control Pane; > System > Device Manager. Find your TV there under Monitors, choose driver tab > update driver... and point it to the driver you just extracted. After sucessfully changing your monitor driver your tv will appear as Acer LG TV, yeah, funny..



After I got my driver into working it was time to install the newest drivers for my video card, and also 3D vision. Thing is, why the hell will I need the 3D vision pyramid if I am not going to need 3D vision glasses??

This did not seem necessary at all but nvidia won't let you install 3D vision pack from the drivers if you do not have a pyramid, apparently this would mean less ca$h for them since people will only spend their money with the expensive video cards they make, and not money in useless glasses that do not work with their monitors... Shame on you nvidia!

So here's the trick:

1 - Dowload and install the latest drivers for you video card from nvidia site

2 - Instead of installing the drivers extract them, you can extract exes with winrar

3 - now you can install the drivers for your video card, it won't install 3D vision drivers

4 - download the 3D vision dongle emulator from here: http://kostasoft.com/index.php?mod=pages&page=clone


5 - Extract the archive in a folder, install the device simulation framework on DSFx86Runtime.msi

6 - run init.bat or init_64.bat if your windows is 64-bit

7 - now run enablestereo.bat in order to connect the emulator to the fake USB port, you should have this screen:


8 - OK, you are going to need a driver that works with this emulator, recent drivers do not work, I found out the last one from nvidia that works is the 6.15.12.8562.


9 - now that you got the fake 3D vision pyramid up and running, remember where you extracted the drivers in step 2? Go there you will find a 3D Vision folder, this contains the installation files for the 3D vision package. Install it separately now and you should be all set

10 - In nvidia control panel, enable stereo 3D in games and test it at maximum resolution, 1920x1080


Note: please note you need to use your games at this resolution for them to work, this happens because the 3D vision, when in passive mode, it just arranges the lines on your TV for first line left eye, second right eye, third left, and so on. 
It might also be necessary to do a little surgery on your glasses by switching the eyes lenses, or you can use them upside down. This happens because Acer Monitors display the eyes per monitor line in a different way than LG.

I also found out that in recent drivers you don't even need to turn on the enablestereo.bat in the future when playing games, you just need it long enough to get your 3D Vision setup running.

Now on to configure your LG TV for best display, through trial and error I found out this config works

1 - Set whatever input you are using for your pc (say hdmi 1) to PC label, yeah, the labels on LG TV do more than just labeling, odd huh?!?

2 - Go to your TV setup menu > picture mode, set it  to expert 1 and now set it like this:

Backlight: 80
Contrast: 100
Brightness: 56
H Sharpness: 0
V Sharpness: 45
Color: 60

These are the settings I found worked best for me, you may try entering a 3D game and adapting it to reduce ghosting (yeah LG 3D TVs suffer a lot from that!)

The latest nvidia driver I had done this was 320.18 driver pack before making this post

Please let me know if this post helps you in some way here in the comments section


Tuesday, September 3, 2013

Como abrir um portal para o inferno com seu iPhone

Então meus amigos, estou aqui para conversar sobre uma coisa muito séria com vocês: o capeta.

O que acontece é que de acordo com a bíblia o iPhone pode ser comprovado o precursor da besta como visto em Apocalipse 13

"E faz que a todos, pequenos e grandes, ricos e pobres, livres e servos, lhes seja posto um sinal na sua mão direita, ou nas suas testas," - Apocalipse 13:16

se você reparar, a imagem da maçã traz em si o número 6 disfarçado, que vem gravado na parte traseira de todos os aparelhos, e esse é o símbolo que você está carregando em sua mão direita, Inadvertidamente.

A referência a vestir o sinal na testa claramente se trata do futuro da tecnologia celular, onde estes estão começando a ser usados na testa como o Google Glass, um mercado no qual é certo que a Apple deve estar investindo.















Além deste fato, reparem que até o parafuso na parte inferior do iPhone tem formato de pentagrama:

Detalhe do parafuso inferior em formato de pentagrama

De certo vocês já puderam constatar alguns comportamentos bizarros por parte deste pequeno aparelho. Steve Jobs, um ser de grande popularidade, como as profecias dizem, trouxe ele para a humanidade e ganhou a confiança de todos, não é a toa que veio a sofrer de câncer, uma doença que sabemos que se trata de castigo divino.

"E adoraram o dragão que deu à besta o seu poder; e adoraram a besta, dizendo: Quem é semelhante à besta? Quem poderá batalhar contra ela?" - Apocalipse 13:4

Não é a toa que o iPhone desperte tamanha religiosidade por parte de seus fãs.

Eu como um desenvolvedor de aplicativos para iPhone posso falar aqui com todo meu parecer técnico que ao desenvolvermos aplicativos para ele, o aparelho se comporta sozinho, adiciona coisas na interface que nós não colocamos lá, uma certa vez fiz um aplicativo que não tinha nada, apenas uma pagina branca e ele trocou a cor, criou menus, fazia até sons! Tudo com a intenção de atrair mais pessoas para esta religião de blasfêmia.


Esses, meus caros, são alguns poucos fatos que levam a esta revelação, ainda existem muitos outros sinais, como o corretor ortográfico que faz você proferir blasfêmias, o texto árabe cabalístico do alcorão que faz com que qualquer programa do iPhone trave, e por aí vai..

Eu não tive a coragem de testar, mas dizem que ao reunirmos 6 iPhones em formato de circulo, e discarmos para todos ao mesmo tempo, um portal poderá ser aberto que permitirá a comunicação com o próprio Steve Jobs em pessoa...



Monday, September 2, 2013

How to fix an iPhone in reboot loop

Recently I have been playing with the internal libs of my iPhone, I tryed switching the CoreText with the old iOS 5.1 so I could maybe fix the unicode of death bug.. Hah!

Turned out my iPhone when rebooted started to reboot endlessly, OMG, my real fear was of being forced to do a full restore and lose my jailbreak

Not until i found iPhone Explorer here: http://www.macroplant.com/iexplorer/

This nifty little program will allow you to make changes in the filesystem WHILE PHONE IS REBOOTING

it helped me changing the lib in the filesystem back to the iOS 6, phew..

The unicode of death! At least for the iPhones...


Maybe you might have been surprised by apps in your iPhone suddenly crashing, or even worse, not nopening anymore!

What happens is that a very cool russian hacker group decided to release on the internet a bug that they found out, a few days before the probable release date for iOS7, september 10th, so that some notionless guys can play with it.

- Link to the original post: http://habrahabr.ru/post/191654/

- Link to the Proof of Concept (do not open if on iOS 6 or Mac OSX mountain lion): https://zhovner.com/tmp/killwebkit.html

What they found out was a sequence of special arabic characters, that applied together with a character that glues the text together and another that inverses it, they can cause a WebKit crash, what means that any app that tries to show this text instantly crashes.

According to the news, Apple had been warned about this bug 6 months ago, what makes it a huge slip on their part not to fix it, after all the iOS 6.1.4 came just to correct a little bug in the lockscreen, but this bug has been published on youtube, instead of quietly warned to them.

Here in Brazil, Cid, a blogger for naosalvo blog did a favor to humanity by posting this code on his twitter calling out for Android users to bomb their iPhone friends with this code in whatever network possible.




Cids calling had an amazing repercursion, with people threatening him, and religious guys saying that he has some pact with the demon, also he got lots of publishing in great newspapers here.

For instance, when this special text is sent via whatsapp, since it appears in the notification area it crashes the springboard immediately (iPhones desktop), and now every time you need to open whatsapp it is going to crash because it will try to show the text, how Nice!

In order to save yourself from this it is necessary to reinstall whatsapp so you can erase your history, according to my cousin Lars he was able to recover part of his history by sending whatsapp data into the iCloud and restoring it afterwards.

In iPhone messages this is even worse, you have to kindly ask your attacker to send another harmless message so you can delete the conversation, or send yourself 50 messages, what will push the history away from the screen.

Now to the technical part, if you are afraid of it you may exit now

I decided to spend some time looking at the crash logs and trying to find out what causes this crash, in my opinion, what have been noticed throughout the internet is wrong! This is not caused by coretext, and I can explain why, take a look at this log from my whatsapp:

Exception Type:  EXC_CRASH (SIGSEGV)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread:  1

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   WebCore                        0x37c298fc 0x379a7000 + 2631932
1   WebCore                        0x37c2690a 0x379a7000 + 2619658
2   WebCore                        0x37c267be 0x379a7000 + 2619326
3   WebCore                        0x37c2a93c 0x379a7000 + 2636092
4   WebCore                        0x37c2a810 0x379a7000 + 2635792
5   WebCore                        0x379ac7c4 0x379a7000 + 22468
6   WebCore                        0x37dd1e98 0x379a7000 + 4370072
7   WebKit                         0x382dab84 0x382d7000 + 15236
8   WebKit                         0x382da5c0 0x382d7000 + 13760
9   WebKit                         0x382da2ec 0x382d7000 + 13036
10  WebKit                         0x382da28a 0x382d7000 + 12938
11  WebKit                         0x382da22a 0x382d7000 + 12842
12  UIKit                          0x33875964 0x33866000 + 63844
13  UIKit                          0x338758a0 0x33866000 + 63648
14  UIKit                          0x338b1328 0x33866000 + 308008
15  UIKit                          0x33874c52 0x33866000 + 60498
16  UIKit                          0x33873a1e 0x33866000 + 55838
17  UIKit                          0x33873858 0x33866000 + 55384
18  UIKit                          0x33872d18 0x33866000 + 52504

It seems clear to me that this crash came from the WebKit instead of the CoreText as people have been saying (I know why, one says and others that do not understand publish)

Come on think with me here, WebKit is open source, the guy can read the code there until he finds the flaw, but in CoreText the guy has to debug assembler shit in order to find a bug, what seems to you the way they found it?!?

I was able to trace the bug to this file in WebKit:
Specifically this function:
adjustGlyphsAndAdvances()

It is possibly already fixed in this recent version of WebKit, because both iOS7 and OSX Mavericks are not affected by this bug.

And here is a lesson for Apple, they thought everything was going to be ok until iOS7 was released, think again, bugs exist to be fixed, especially critical bugs that lead to a DoS (Denial of Service)

EDIT:

For people in Androids to use this, it is better to copy the text from Cids twitter or this one: http://pastebin.com/raw.php?i=AEF3b444

O Unicode da morte! Pelo menos nos iPhones...

Talvez você tenha sido surpreendido por aplicativos do seu iPhone fechado subitamente, ou até pior, fechando e nunca mais querendo abrir!

O que acontece é que um grupo de hackers russos muito legais resolveram soltar na net um bug que eles descobriram, alguns dias antes do provável lançamento do iOS7, dia 10 de setembro, para que uns sem noção possam brincar disso felizes.

- Link para o post original: http://habrahabr.ru/post/191654/

- Link para a prova de conceito (não acesse se estiver no iOS 6 ou um Mac Osx mountain lion): https://zhovner.com/tmp/killwebkit.html

O que eles descobriram foi uma seqüência de caracteres especiais árabes, que juntos com um caractere de inverter o texto e junto com um outro de aglomerar ele fazem o WebKit travar, ou seja, qualquer aplicativo que tentar mostrar esse texto trava e fecha na hora!

De acordo com notícias, a Apple já haveria sido avisada desse bug a uns 6 meses, o que torna um belo vacilo da parte deles não corrigir logo, afinal o iOS 6.1.4 veio pra corrigir uma besteira na lockscreen, so que essa besteira foi publicada no YouTube ao invés de quietamente avisada...

No Brasil o Cid, blogueiro do naosalvo fez um favor a humanidade maior ainda postando o código no Twitter dele e convocando os usuários do Android a bombardearem seus amigos com iPhone desse código em tudo que é rede.


A convocação do Cid teve uma repercussão incrível, com pessoas ameaçando processar ele, evangélicos se doendo e dizendo que ele tem pacto com o demônio e diversas publicações em jornais de grande circulação.

Quando esse texto especial é enviado pelo whatsapp, como ele aparece nas notificações isso imediatamente trava o springboard e reinicia ele (o desktop do iPhone), e agora toda vez que você tentar abrir o whatsapp ele ira travar, pois vai tentar mostrar o texto. Olha q legal!

Para se salvar disso é necessário reinstalar o whatsapp o que apagara seu histórico, de acordo com meu primo Lars parte do histórico dele ele conseguiu recuperar jogando os dados do whatsapp para o iCloud e depois restaurando após reinstalar.
Nas mensagens do iPhone isso é pior, vc tem que pedir ou pro malfeitor te mandar uma mensagem ou você mesmo te mandar umas 50 mensagens inofensivas, o que empurrará o histórico para fora da tela.

Agora vem a parte da analise técnica, quem tem medo disso pode sair agora
Eu resolvi perder algum tempo olhando pros crash logs e tentando descobrir o que motiva esse travamento, na minha opinião o que vem sendo noticiado na internet está errado! Não é por causa do coretext, e eu explico o porquê, da uma olhada nesse log que saiu do meu whatsapp:

Exception Type:  EXC_CRASH (SIGSEGV)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread:  1

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   WebCore                        0x37c298fc 0x379a7000 + 2631932
1   WebCore                        0x37c2690a 0x379a7000 + 2619658
2   WebCore                        0x37c267be 0x379a7000 + 2619326
3   WebCore                        0x37c2a93c 0x379a7000 + 2636092
4   WebCore                        0x37c2a810 0x379a7000 + 2635792
5   WebCore                        0x379ac7c4 0x379a7000 + 22468
6   WebCore                        0x37dd1e98 0x379a7000 + 4370072
7   WebKit                         0x382dab84 0x382d7000 + 15236
8   WebKit                         0x382da5c0 0x382d7000 + 13760
9   WebKit                         0x382da2ec 0x382d7000 + 13036
10  WebKit                         0x382da28a 0x382d7000 + 12938
11  WebKit                         0x382da22a 0x382d7000 + 12842
12  UIKit                          0x33875964 0x33866000 + 63844
13  UIKit                          0x338758a0 0x33866000 + 63648
14  UIKit                          0x338b1328 0x33866000 + 308008
15  UIKit                          0x33874c52 0x33866000 + 60498
16  UIKit                          0x33873a1e 0x33866000 + 55838
17  UIKit                          0x33873858 0x33866000 + 55384
18  UIKit                          0x33872d18 0x33866000 + 52504

Para mim ficou claro que o crash veio do WebKit e não do CoreText como o pessoal vem dizendo (e eu até sei porquê, um fala e os outros que não entendem divulgam).

Pensa bem, o WebKit é open source, o cara tem o código fonte lá de frente pra ele e pode ler até achar uma falha, já o core text o camarada tem que debugar a parada em assembler, qual te parece a forma que descobriram esse bug?!?

Pois é, a fonte desse bug consegui rastrear ate esse arquivo do WebKit:
Especificamente nessa função:
adjustGlyphsAndAdvances()

Possivelmente ele já esta arrumado nessa versão atual do WebKit porque o ios7 beta não é afetado pelo bug, bem como o osx mavericks.

Aqui fica uma lição para a apple pelo menos, eles acharam que ia ficar tudo tranquilo até sair o ios7, pensem denovo, bugs são feito para serem arrumados, principalmente bugs críticos como esse que correm risco de DoS (negação de serviço)

EDIT:

O facebook bloqueou posts com este código:


percebi que para o pessoal do android, fica melhor se copiar o texto do twitter do Cid ou esse aqui, caso queiram usar: http://pastebin.com/raw.php?i=AEF3b444

Algumas idéias legais para usar esse código (coloque suas idéias nos comentários):

- Colocar no SSID da sua rede wifi, ninguém irá conseguir conectar em nada ao redor
- Mandar por mensagem para todos seus amigos
- Postar no twitter, todo mundo que te segue não conseguirá abrir o twitter
- Colocar no seu status do whatsapp.

Sunday, September 1, 2013

Hello World

Welcome to my blog,


After a while using computers, I ended up doing lots of stuff, which ended up looking usefull as hell in some way.

I used to limit myself in sharing this stuff and thoughts with my friends, and in some way, those ideas ended up dying, this blog comes not only to organize and document this, but also to help other people trying to do the same things, after all, the world changed since that old modem buzz and beeps.


This blog will not treat only about computers and nerd stuff, well yes lots of computers and nerd stuff but what intrigues me, and also the object of this blog, are people with the hacker thinking.

But what the hell is this hacker thinking thing?

Calm down, I will explain, I consider hacker thinking when a person do not have the usual thougth into following straight, pre-defined lines. Yes this has lots to do with lots of things, not only computers, everything, and I mean EVERYTHING, has more than one way to be done.

Everything is hackable, from your computer to your girlfriend/boyfriend.

Now you must be thinking about the lots of illegal stuff that comes here. Do not worry, despite the fact that I can talk here about lots of stuff which will make this page go offline, I'd rather leave some of that stuff only to myself, because I do.

The most you are going to have is an example of toughts, I intend to show how to I get to conclusions, and why having this alternative way of thinking, I do not intend to limit myself only to computers, even because thats not the only thing in my life.

Oh, and before idiots begin appearing out of nowhere trying to categorize hackers as a special group, most like rockers, emocore, or any other music related groups, stop! I don't consider myself a hacker ok? you can keep up with your group because, in reality I don't really categorize myself in many stuff, this label thing people use and are jealous off is really not my thing..

Como juntar seu Dotz com o de seu amigo

Eu falei para vocês que eu não ia tratar só de computadores nesse blog não falei?

Então, recentemente me deparei com um problema com meu Dotz, eu queria comprar uma Apple TV mas faltavam uns 10 mil Dotz para isso, agora imagine gastar mais 10 mil reais no meu cartão de crédito só para poder comprar ela?

Foi aí que resolvi ver se seria possível pegar uns dotz emprestados de uma amiga minha (que também não tinha os tais 30 mil Dotz), e para minha surpresa, não dá! Agora fico imaginando a verdadeira dor anal que deve ser para pessoas casadas que querem comprar um produto e tem que esperar um dos dois ter Dotz suficiente apenas...

O pensamento hacker entrou então em vigor (não, eu não fiz merda com o site de Dotz, gosto da vida fora da cadeia ok?), pensei se teria uma forma alternativa de juntarmos nossos pontos, e não é que achei?!?

O macete é que o Dotz vende vale presentes também, em especial os da Livraria Saraiva, que não vende só livro já tem um bom tempo, falei esse da Saraiva pq deve valer para o Brasil todo, mas o que me interessei mesmo foi pelos vales da CTIS, uma loja de informática daqui de Brasília (careira por sinal).

Acaba que, com 28 mil Dotz eu poderia comprar dois vales, um de R$300 e um de R$100, e isso dá certinho a Apple TV, eu ainda economizei 2 mil Dotz nessa brincadeira!

Então fomos lá, eu comprei o vale de 300, minha amiga o de 100 e saímos de lá felizes com a Apple TV, é uma pena que a Apple TV de 3a geração não dá para fazer jailbreak, mas foda-se, ela já tem coisas legais suficientes...

OBS: Se você for fazer o macete com a Saraiva, coloque nos comentários aqui se eles aceitam mais de um vale-presente em uma compra

FISL 14 e sanduíche


Bom, o pessoal que me conhece deve saber que tive a honra de dar uma palestra no FISL 14, a palestra tinha apenas duração de 1 hora então foi tudo meio corrido.


A palestra foi ministrada em conjunto com o Msc. Thiago Leite, um colega de longa data nessas questões de pesquisa em informática.

Nela a gente tratou do Open Source Security Testing Methodology Manual (OSSTMM) , um manual de metodologias que é bem adotado em testes de penetração.

Ainda durante a palestra discorremos sobre a lei Carolina Dieckmann (que ainda pretendo falar nesse blog), e ferramentas open source para este tipo de teste, como o famigerado MetaSploit Framework e o Kali Linux.

Para quem quiser assistir o video da palestra na íntegra: http://hemingway.softwarelivre.org/fisl14/high/41e/sala41e-high-201307041359.ogg

Sim, ele está em ogg... afinal é um congresso de software open-source

EDIT: converti o video para o blog:




Olá Mundo

Sejam bem vindos ao meu blog,

Depois de muito tempo usando computadores acabei com um monte de coisas em minhas mãos que eu havia feito, e que de certa forma, até que pareciam uteis pra caralho.

Eu me limitava a compartilhar esses pensamentos e feitos com meus amigos, de uma forma as idéias acabavam morrendo, este blog vem não só para organizar e documentar essas coisas, mas também para servir de auxílio para outras pessoas tentando fazer o mesmo, afinal, o mundo mudou daquele velho chiado de modem após meia noite..

Este blog não se tratará apenas de computadores e coisas nerds, sim muitos computadores e muitas coisas nerds mas o que me intriga e o objeto deste blog são as pessoas que tem o tal pensamento hacker.

Mas que diabos é isso de pensamento hacker?

Calma eu explico, eu classifico pensamento hacker quando aquela pessoa que não tem o pensamento cotidiano de seguir linhas retas pré-definidas. Sim isso tem a ver com muita coisa, não só computadores, tudo, e eu digo TUDO, tem mais de uma forma de ser feito.

O jeitinho brasileiro vem bem a calhar quando falamos disso, mas se vc parar para pensar, tudo é hackeável, desde o seu computador, até a sua namorada(o).

Agora vc deve estar pensando o tanto de coisa ilegal que vem por aí. Não se preocupe, apesar de eu poder falar aqui muita coisa que faria este blog sair do ar, prefiro deixar algumas coisas só para mim, porquê né.

O máximo que você vai ter é um exemplo de pensamentos, pretendo mostrar como eu chego a tais conclusões, e o porquê ter este pensamento alternativo, não pretendo me limitar apenas a informática, até mesmo pq não é a única coisa do meu cotidiano.

Ahh, e antes que apareçam aqueles idiotas que querem classificar hacker como uma tribo, assim como fazem por exemplo com emos, roqueiros, etc, tirem o cavalo da chuva, eu não me considero hacker ok? fiquem com sua trupe por aí, na verdade eu não me classifico como muita coisa, esse negócio de rótulos que as pessoas vestem e tem um certo ciúme não é pra mim..