User Tools

Site Tools

Translations of this page:

about-draft

This is an old revision of the document!


About

If you have reached this website, we have to assume you are interested in DJI aircraft, and any tweaks and modifications you could possibly make for your equipment. This website is dedicated to just that topic. But first, who are we.

The OG's (Original Gangsters)

We came up with the title “The Original Gangsters” to represent the early contributors to this self organising project. The people that have contributed here have a common philosophy of collaboration through open source code to support our interests which in this case are DJI Aircraft.

For reference, our assorted repositories are listed below

Wiki You have already found your way here. The wiki is designed to bring together all of the various components to a single hub.
dji_rev This repository contains tools for reverse engineering DJI product firmware images.
deejayeye-modder APK “tweaks” for settings & “mods” for additional / altered functionality
pyduml Assistant-less firmware pushes and DUMLHacks referred to as DUMBHerring when used with “fireworks.tar” from RedHerring. DJI silently changes Assistant? great. we will just stop using it.
RedHerring RedHerring, aka “July 4th Independence Day exploit”, “FTPD directory transversal 0day”, etc. (Requires Assistant). We all needed a public root exploit. why not burn some 0day?
dji_system.bin Current Archive of dji_system.bin files that compose firmware updates referenced by MD5 sum. These can be used to upgrade and downgrade, and root your I2, P4, Mavic, Spark, Goggles, and Mavic RC to your hearts content. (Use with pyduml or DUMLDore)

Now that we have the introductions out of the way, its time for a story.

Once upon a time

Situation

  • DJI are a leading manufacture of Remotely Piloted Aircraft.
  • DJI had a reputation for producing high quality products that were used across a broad market spectrum that includes recreational users through to high end commercial users.
  • DJI has the largest market share globally, with nearly 50% of all FAA registrations being linked to DJI Mid June 2015 1)

Complication

  • DJI made changes to the firmware and software used in their products which restrict flying in some areas by operators who have legal permission to fly in those areas.
  • DJI cite online processes that will allow flying in those areas. However, the community has noted examples of these requests taking extended times to be approved.
  • Owners were unhappy with the changes made by DJI.
  • The more technical owners in the community started to organise to understand how DJI restrictions could be bypassed.
  • Root level access to DJI firmware has been obtained using exploits in some of the software used by DJI aircraft.
  • DJI responded by rushing out multiple updates and patches to try to close the gate. However, these changes have caused unstable flight for many pilots.
  • Apple has unsuccessfully tried to prevent people from jailbreaking phones for years. DJI has been trying to block people from jailbreaking their aircraft with hastily prepared patches which have safety implications for all DJI pilots globally.
  • Based on analysis so far, it has been determined that DJI are using open source software components in violation with the license agreements of those components.
  • Based on analysis so far, it has been determined that more information than has been previously disclosed is being transmitted externally.
  • DJI are censoring discussions about these topics on their public forums, to try to prevent knowledge of these issues and jailbreak procedures from spreading.

Implication

  • Recently, there have been news articles that indicate that DJI products have been banned for use by US military due to data leakage and/or safety concerns.
  • DJI customers are now “rolling back” to earlier versions using third party developed tools, in order to bypass the DJI imposed restrictions and to fly with safer software.

Position

  • DJI does not have jurisdiction to decide where and how pilots fly their aircraft. Local state regulators have authority through laws.
  • DJI censorship of their forums is having an undesired effect of stirring up the community even more each time posts are deleted preventing free speech about the situation.
  • DJI is using open source code contrary to the license terms and conditions of the author of those components.
  • DJI is frequently releasing patches in an attempt to prevent jailbreaks and tweaks, at the sacrifice of quality assurance and safety. Multiple vertical fly-aways and unstable flight incidents have been reported after recent updates.

Action

  • DJI need to re-evaluate their internal processes and policies that have caused the above activities and events.
  • Software patches need to be tested in a beta program to ensure safety is paramount, above business objectives at all times.
  • DJI needs to release updated source code to allow it to be compliant with GPL licenses.
  • DJI needs to be updated to remove restrictions that require advance approval to fly in NFZ areas, subject to an appropriate method of local regulatory reporting compliance.

Benefits

  • First and foremost, safety has been the loser. By implementing the actions listed - safety will be improved.
  • Software license compliance will be obtained, providing benefits to the community in accordance with license conditions. This will also allow peer review of DJI code, which in turn allow improvements to be submitted to DJI by the community.
  • Free speech will be encouraged in DJI forums, instead of censoring rational debate.
  • Pilots will not be hindered by the current GEO process of requesting unlocks to fly in NFZ areas.

Conclusion

It is so ironic about how all this came about. If DJI had not implemented their NFZ (No Fly Zone), this would never have happened in more ways than one. Firstly, it is that red tape that got many people frustrated with DJI. But even more amusing is the fact that it is the very process of updating the NFZ database that was exploited to get root access to the aircraft.

It is fair to say that this whole community started as a result of a lack of trust in DJI, as a direct result of the red tape they have introduced. Particularly outside the USA, this process of sending email messages and waiting causes overhead and additional cost to DJI pilots. This caused a lack of trust in DJI, which spurred on these efforts.

Long Live the Original Gangsters

about-draft.1501976268.txt.gz · Last modified: 2017/08/05 23:37 by czokie