Python library for Maltego transforms. Based on code from Paterva, available at http://dev.paterva.com/developer/downloads/ and reused with permission.
Build your own remote transforms!
Maltego library
License: Apache License 2.0
Python library for Maltego transforms. Based on code from Paterva, available at http://dev.paterva.com/developer/downloads/ and reused with permission.
Build your own remote transforms!
Instead of assembling by hand, use dicttoxml
or similar to create XML in a more reproducible and readable manner.
This is different from #3 in that we are dealing with the places where we do want to generate strings. Rather than just concatenating with str1 + str2
, we should either use string interpolation (e.g. str.format()
) or ''.join(str1, str2)
.
Like #6
I fixed some immediate pain in #2 but there still are a lot of str(varName)
calls out there.
Set up testing environment and basic smoke tests.
[-] Request for x.x.x.x of type IPAddress
[-] Fetching bare fundamental x.x.x.x => type specified was IPAddress
[-] Preparing Maltego XML
[+] Found 2 results
[+] Found malicious event: 65389c46-b2c4-462b-af5e-3c69c9c7a105
[+] Found intel alert: 6eb20c57-50af-46f3-9aa9-a85e2231d46d
[+] Writing Maltego XML
Traceback (most recent call last):
File "/home/maltego/venv/local/lib/python2.7/site-packages/bottle.py", line 862, in _handle
return route.call(**args)
File "/home/maltego/venv/local/lib/python2.7/site-packages/bottle.py", line 1732, in wrapper
rv = callback(*a, **ka)
File "scryingorb/debugTRX_Server.py", line 14, in fundamental
ret_v = orb.trx_fundamental(TRX.MaltegoMsg(request.body.getvalue()))
File "/home/maltego/scryingorb/scryingorb/scryingorb.py", line 69, in trx_fundamental
results = self.fundamental(m_request.Value, m_request.Type)
File "/home/maltego/scryingorb/scryingorb/scryingorb.py", line 113, in fundamental
return self._output(data)
File "/home/maltego/scryingorb/scryingorb/scryingorb.py", line 246, in _output
return xform.returnOutput()
File "build/bdist.linux-x86_64/egg/TRX/TRX.py", line 202, in returnOutput
r += self.entities[i].returnEntity()
File "build/bdist.linux-x86_64/egg/TRX/TRX.py", line 135, in returnEntity
if (str(field['matchingRule']) != "strict"):
TypeError: string indices must be integers, not str
Returning entities with non-ASCII values generates a UnicodeEncodeError
.
MaltegoTransform.UIMessages
should be a list of named tuples to improve readability. Sort of like a dict but more efficient and less prone to bugs in this use case.
Make sure we're testing all the branches for MaltegoEntity.returnEntity
. While we're at it, probably do the same for MaltegoTransform.returnOutput
.
As previously done with MaltegoTransform
- these can probably just be removed straight off.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.