Ok, so I have this really bad habit of bricking my Droid or loosing root.... you name it, it's probably been inflicted upon my device. So in an effort to keep me from loosing my notes on the subject, here is my Linux based process for un-bricking my Droid. I'm not sure how legal it is to link to roms and such but I don't need those I already have my nandroid backups.
Needed files, SBF_flash and SPRecovery_ESE81.sbf
This is a retarded simple fix. (you can still damage your phone beyond repair blah blah blah...)
Download SBF_flash and SPRecovery_ESE81.sbf [these are the links from CyanogenMod Wiki] Plug in Droid while turned off and then power on while pressing up on the d-pad. This will dump you into the boot loader. Then run './sbf_flash SPRecovery_ESE81.sbf' This will flash the recovery image to your Droid. And now you are done. Congrats you just un-bricked your phone. Now install the Nandroid backup of your choice or install the rom of your choice. Enjoy.
Sunday, July 25, 2010
Saturday, July 17, 2010
Android applications that I use
Well everyone else has done it to some extent or another. I'm just going to list the apps that I love, like and just can't live without. As far as the apps that I can't live without, I'll denote those with an (*). I've got a rooted Motorola Droid running the DroidMod rom and a custom kernel.
So here they are in no particular order:
*Appmonster - what I use to backup and store different versions of the apps that I have installed.
*ASE (android scripting environment) - python, perl, and a few other scripting languages on the android platform. It's not python3, but it has run parts of snkmchnb's getcast before. Who needs a GUI pod catcher on android when you have the CLI?
*sipdroid - FOSS VoIP client. It only supports one account at a time, but this is the program that I use for free calling via googlevoice+ipkall+ekiga.
*Bible - online translations of the Bible, newer versions are very bloated. Until an offline version is installed, I run version 1.2
*terminal - does not require an explanation, it's the CLI.
*ConnectBot - SSH client. Allows for more than one ssh session at a time. More control than just terminal.
*drocap2 - root only application that allows for taking screenshots of the device at any time. Can be set to run with a timer or just simply shaking the device. I use it to take all the screenshots that are found on unixporn.
*home++ - replacement home screen that removes the need for the notification bar and has that cool little launcher bar as seen in the above screenshots.
*Google Voice - must have for my free SMS abilities.
*ES File Explorer - file and ftp access, handy for uploading recordings to the ftp directly from the android device.
*G-MoN - war driving
*Maps(-) - openstreetmaps, google maps, opencyclemaps all rolled into one. NO
NAVIGATION. But who needs that anyway?
*overclockwidget - allows me to under and over clock my cpu.
andchat - IRC
audiomanager - for those times when the default audio button just won't cut it.
barcode scanner - yeah
blogger-droid - it's installed but I've never had a reason to use it yet.
Chess - one of the 2 games that have ever been installed on this device.
opensudoku - the other game that's installed.
dPod - *cast catcher until I get getcast or bashpodder working via ASE
DroidLight - use the LEDs like a flashlight.
Dropbox - allows to download stuff from my dropbox account. Does not download folders, which is very annoying.
FBreader - FOSS book reader
mapdroyd + contentdroyd - openstreetmaps cached on the phone. not as up to date as Maps(-) but still useful for area's that you do not have cached.
mustard - identica client
Netcounter - just something that I use to monitor my bandwidth usage of the 3G connection. If you use SIP for your phone calls, this is a MUST.
shopsavvy - bloated app that is kinda fun to play with.
the weather channel - weather... like we need to know anything else about the weather.
wifinder - handy gui for connecting to different access points.
Well that's pretty much everything that I meant to go on about today. If you should happen to read this and have a useful application that I've not listed here, please send me an email at cobra2 {at} unixporn [dot] com. Thanks in advance.
So here they are in no particular order:
*Appmonster - what I use to backup and store different versions of the apps that I have installed.
*ASE (android scripting environment) - python, perl, and a few other scripting languages on the android platform. It's not python3, but it has run parts of snkmchnb's getcast before. Who needs a GUI pod catcher on android when you have the CLI?
*sipdroid - FOSS VoIP client. It only supports one account at a time, but this is the program that I use for free calling via googlevoice+ipkall+ekiga.
*Bible - online translations of the Bible, newer versions are very bloated. Until an offline version is installed, I run version 1.2
*terminal - does not require an explanation, it's the CLI.
*ConnectBot - SSH client. Allows for more than one ssh session at a time. More control than just terminal.
*drocap2 - root only application that allows for taking screenshots of the device at any time. Can be set to run with a timer or just simply shaking the device. I use it to take all the screenshots that are found on unixporn.
*home++ - replacement home screen that removes the need for the notification bar and has that cool little launcher bar as seen in the above screenshots.
*Google Voice - must have for my free SMS abilities.
*ES File Explorer - file and ftp access, handy for uploading recordings to the ftp directly from the android device.
*G-MoN - war driving
*Maps(-) - openstreetmaps, google maps, opencyclemaps all rolled into one. NO
NAVIGATION. But who needs that anyway?
*overclockwidget - allows me to under and over clock my cpu.
andchat - IRC
audiomanager - for those times when the default audio button just won't cut it.
barcode scanner - yeah
blogger-droid - it's installed but I've never had a reason to use it yet.
Chess - one of the 2 games that have ever been installed on this device.
opensudoku - the other game that's installed.
dPod - *cast catcher until I get getcast or bashpodder working via ASE
DroidLight - use the LEDs like a flashlight.
Dropbox - allows to download stuff from my dropbox account. Does not download folders, which is very annoying.
FBreader - FOSS book reader
mapdroyd + contentdroyd - openstreetmaps cached on the phone. not as up to date as Maps(-) but still useful for area's that you do not have cached.
mustard - identica client
Netcounter - just something that I use to monitor my bandwidth usage of the 3G connection. If you use SIP for your phone calls, this is a MUST.
shopsavvy - bloated app that is kinda fun to play with.
the weather channel - weather... like we need to know anything else about the weather.
wifinder - handy gui for connecting to different access points.
Well that's pretty much everything that I meant to go on about today. If you should happen to read this and have a useful application that I've not listed here, please send me an email at cobra2 {at} unixporn [dot] com. Thanks in advance.
Wednesday, July 7, 2010
Just a reminder about alias
This is just kinda for my crappy memory.
So I was messing around earlier today with a few alias' in bash. I had them all set up for my user in my ~/.bashrc file. Then I logged into root to do something. Tried to use one of my new alias..... FAIL. So I had to do a little reading on how to set an alias for root. I found that I needed to edit /root/.bashrc.
Then I got to thinking. Wouldn't it just be better to have the alias for the whole system rather than just editing each user's .bashrc? So I did a little more reading and found that just editing /etc/bash.bashrc would solve all those problems.
So I was messing around earlier today with a few alias' in bash. I had them all set up for my user in my ~/.bashrc file. Then I logged into root to do something. Tried to use one of my new alias..... FAIL. So I had to do a little reading on how to set an alias for root. I found that I needed to edit /root/.bashrc.
Then I got to thinking. Wouldn't it just be better to have the alias for the whole system rather than just editing each user's .bashrc? So I did a little more reading and found that just editing /etc/bash.bashrc would solve all those problems.
Tuesday, April 20, 2010
Blocking ads and other various websites
Have you ever been to a site that had one of those very annoying embedded ads that just hung at the top or bottom of the page. This 'banner' was just in the way no matter what you did. Have you ever wanted to get rid of it?
I use various browsers when browsing the web, some support adblock and others do not. I'm not a fan of browser plugins. I'm under the firm belief that a browser is a browser and should only deal with the I/O of html. That being said, I don't use adblock, noscript or anything else like that. I use settings in /etc/hosts to block my ads.
So for today's example, turn off your adblock utility and navigate over to www.unixporn.com. Now you should see a very annoying banner ad on every single page, even on the pages where your viewing a screenshot full screen. Lets get rid of this ad.
OK, from the information in the ad, we know that it is hosted by godaddy. So we'll try the easiest thing first, open up the page source, and search for the term 'godaddy'.
lynx -source www.unixporn.com | grep godaddy
this will give you this line:
script language="javascript" src="https://a12.alphagodaddy.com/hosting_ads/gd01.js">
Now that was pretty easy. Lets add this to /etc/hosts.
# echo '127.0.0.1 a12.alphagodaddy.com' >> /etc/hosts
Restart your browser, and navigate back to unixporn. Tada... the ad is gone. Lets add a site to block. I'm not a fan of social networking so this seems appropriate to me.
# echo '127.0.0.1 myspace.com' >> /etc/hosts
Restart the browser, and navigate to myspace. If all went well, you should get an error about not being able to load the page. Wonderful isn't it?
You can get a head start on adding lists like this to /etc/hosts by browsing through your adblock lists. The really nice thing about blocking ads/websites this way is that unlike using an adblock plugin inside a browser such as firefox or chromium, this is a system wide setting. You no longer have any need to run adblock.
# echo '127.0.0.1 myspace.com' >> /etc/hosts
Restart the browser, and navigate to myspace. If all went well, you should get an error about not being able to load the page. Wonderful isn't it?
You can get a head start on adding lists like this to /etc/hosts by browsing through your adblock lists. The really nice thing about blocking ads/websites this way is that unlike using an adblock plugin inside a browser such as firefox or chromium, this is a system wide setting. You no longer have any need to run adblock.
Sunday, April 18, 2010
An afternoon messin with WEP
I was bored this afternoon and decided that I needed to mess around with some WEP cracking. There were quite a few APs around me that were encrypted with WEP keys. It has been a while since I broke out the massive WEP attack book and I thought today would be a good refresher.
So first things first, I checked to make sure that my hardware was setup. I've got a Hawkings Technology HWU8DD usb wireless dish. This device uses the zd1211rw drivers which do not fully support all injection attacks. However, it's more than enough for any WEP attack that I played with today. I tested to make sure the device was working by running # iwlist wlan1 scanning >> scan.log then parsed through those results and picked out the first WEP secured AP that I saw in the list. I wrote down the mac address, the channel and the ESSID of the AP. 00:00:00:00:00:00 6 Secured
I changed directories into my build folder. $ cd ~/src. Then I pulled down the latest aircrack-ng sources from SVN.
$ svn co http://trac.aircrack-ng.org/svn/trunk/ aircrack-ng
$ cd aircrack-ng
$ make
# make install
You could also just pull aircrack-ng out of your repos.
Now I was ready to rock and roll. The first thing that I did was to get my device in monitor mode. I know that my device doesn't really have a solid monitor mode, so I have to run # airmon-ng start wlan1 to get it to listen to everything. Now I was ready to play. I fired up vim and made a bash script to spam the AP.
$ vim ~/aircrack.sh
#!/bin/bash
#run as root
# run airmon-ng start $interface
# run airodump-ng in another terminal
essid=
aireplay-ng -e ${essid} -1 10 mon0 &
aireplay-ng -e ${essid} -0 50 mon0 &
aireplay-ng -e ${essid} -3 mon0 &
#end
Changed the essid to the proper name, wrote and saved. I made a 'hack' directory $ mkdir ~/hack to dump all my packet captures into and changed directory into that directory. I fired up airodump-ng to listen to the channel of the AP and dump the IVS to a file and ran my script in another terminal.
# airodump-ng mon0 -i -w Secured -c 6
# /home/user/aircrack.sh
I watched the IVS numbers in airodump-ng climb, waited about a min, and while still attacking the AP ran # aircrack /home/user/hack/Secured*.
I really didn't need to keep running the attack, in less than a minute I had captured enough information to crack the WEP key. I went on to crack 8 more APs in about an hour. Needless to say, if you using WEP expect to be hacked. Switch to something more secure such as WPA2.
Tuesday, February 9, 2010
Another way to use cron to keep a log of your dynamic ip changes.
My cousin moved my desktop/fileserver over to his house and hooked it up to the internet to give me access to it via ssh. He has a dynamic ip from his isp which changes anytime the router is rebooted and at random times through the day. I wanted to both keep track of the ip and keep a log of how often it changed. I didn't think that I could keep the log if I used something like dyndns. I already use dropbox on all my machines, so I thought that this would be an easy way to get the ip back and forth and be accessable anywhere that I might travel. So I wrote a cron job to dump the ip address to a file in my dropbox folder every hour on the hour.
So if your going to do this my way, your going to need to have dropbox, lynx, cron, and some sort of text editor [vim].
I'm running archlinux on my desktop. First, I looked around in /etc for my cron folders and I found these:
- /etc/cron.daily
- /etc/cron.hourly
- /etc/cron.monthly
- /etc/cron.weekly
#!/bin/bash
#Logs the ip to a file in the dropbox folder
#edit dropbox variable to correct path.
dropbox=
lynx -dump http://www.whatismyip.org >> $dropbox/ip.log
#end of file
Now just type :w and :q, for write and quit. Then change permissions so that cron can execute the script, chmod a+x /etc/cron.hourly/ip. Now give the script a test run /etc/cron.hourly/ip. You can cat the file in dropbox to see if it worked, cat /ip.log .
Enjoy this quick and dirty way to keep track of your ip address.
Thursday, January 28, 2010
Using Google Voice through Ekiga on Android
Well I am the proud owner of the Motorola Droid. I have a Google Voice (GV) account, a gizmo5 account and an ekiga account. I wanted to be able to receive calls over SIP from GV to ekiga. But GV does not provide any ties to any sip service other than gizmo5. I found that I could forward calls coming into gizmo to another sip service. This is how I made Google Voice work over sip on my Droid.
I found a sip client called Sipdroid that has worked the best for me on my Droid. The developers of this application add in a lot of support for the sip services offered by PBXes. I find this to be needless for my uses of a sip client, but some people may find it easier to use.
First, your going to need to log into your Google Voice account. Go into settings and add a phone. This phone will be your gizmo5 number [the 1-747-***-**** number] and you should select gizmo5 as the type of phone. Do not verify the new phone yet. Now, you need to log into gizmo5 and forward all calls to your *@ekiga.net.
Now, you need to download and install sipdroid from the android market. Open the program. Tap the menu button and go into settings. Go into 'Sip Account Settings' and enter your ekiga log in information into the user name and password spaces. For the 'Server' enter 'ekiga.net' leave Domain blank. The Port should be 5060 and protocol should be UDP as TCP will not authenticate with ekiga yet. Now, hit back and go into 'Call Options' and make sure 'Use Wlan' and 'Use 3G' are checked. I don't advise using EDGE as the call quality is very poor. For 'Preferred Call Type' select 'phone'.
Under 'Advanced Options' you can adjust the gain. Settings higher than the defaults can cause significant problems for the person(s) on the other end of the call. Be wary when setting them and also consider heavy testing from multiple locations before setting on your preferred settings here.
Now, go back to the settings in Google Voice and verify your gizmo5 phone. Your android phone should ring, slide up to answer the call, then slide the arrow at the bottom of the screen to bring up the dial pad and enter the verification code from GV.
Presto!! Your now receiving GV phone calls over SIP on your android.
I found a sip client called Sipdroid that has worked the best for me on my Droid. The developers of this application add in a lot of support for the sip services offered by PBXes. I find this to be needless for my uses of a sip client, but some people may find it easier to use.
First, your going to need to log into your Google Voice account. Go into settings and add a phone. This phone will be your gizmo5 number [the 1-747-***-**** number] and you should select gizmo5 as the type of phone. Do not verify the new phone yet. Now, you need to log into gizmo5 and forward all calls to your *@ekiga.net.
Now, you need to download and install sipdroid from the android market. Open the program. Tap the menu button and go into settings. Go into 'Sip Account Settings' and enter your ekiga log in information into the user name and password spaces. For the 'Server' enter 'ekiga.net' leave Domain blank. The Port should be 5060 and protocol should be UDP as TCP will not authenticate with ekiga yet. Now, hit back and go into 'Call Options' and make sure 'Use Wlan' and 'Use 3G' are checked. I don't advise using EDGE as the call quality is very poor. For 'Preferred Call Type' select 'phone'.
Under 'Advanced Options' you can adjust the gain. Settings higher than the defaults can cause significant problems for the person(s) on the other end of the call. Be wary when setting them and also consider heavy testing from multiple locations before setting on your preferred settings here.
Now, go back to the settings in Google Voice and verify your gizmo5 phone. Your android phone should ring, slide up to answer the call, then slide the arrow at the bottom of the screen to bring up the dial pad and enter the verification code from GV.
Presto!! Your now receiving GV phone calls over SIP on your android.
Subscribe to:
Posts (Atom)